《《讲数据库开发》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《讲数据库开发》PPT课件.ppt(34页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第四讲第四讲 数据库开发实例数据库开发实例数据库开发实例数据库开发实例v建立数据库:数据表天行健,君子以自强不息数据库实例 吴雪峰数据库开发实例数据库开发实例v1、设置config文件 天行健,君子以自强不息数据库实例 吴雪峰数据库开发实例数据库开发实例v2、添加“类”文件并在其中添加相关底层代码(默认名class1)v3、“类”文件添加相关引用:using System.Data.SqlClient;static public bool ExecuteSql(string sqlStr)SqlConnection conn=new SqlConnection(ConfigurationSet
2、tings.AppSettingsConnectionString);try SqlCommand com=new SqlCommand(sqlStr,conn);conn.Open();com.ExecuteNonQuery();conn.Close();return true;catch(Exception ee)conn.Close();return false;天行健,君子以自强不息数据库实例 吴雪峰实例实例11用户登录用户登录vstatic public DataSet GetDsFromSql(string sqlStr)v v SqlConnection conn=new Sql
3、Connection(ConfigurationSettings.AppSettingsConnectionString);v DataSet ds=new DataSet();v tryv v SqlDataAdapter da=new SqlDataAdapter(sqlStr,conn);v conn.Open();v da.Fill(ds);v v catch(Exception)v v ds.Tables.Add(TempTable);v v conn.Close();v return ds;v 天行健,君子以自强不息数据库实例 吴雪峰vprotected void btnOK_Cl
4、ick(object sender,EventArgs e)v v string sql;v sql=select*from db_User where UserID=+txtName.Text+and Password=+txtPsw.Text+;v v DataTable dt;v dt=Class1.GetDsFromSql(sql).Tables0;v if(dt.Rows.Count0)v v lbl1.Text=恭喜您登陆成功!你的密码是:+dt.Rows0Password.ToString();v v elsev v lbl1.Text=请输入的用户名和密码不正确!;v v 实例
5、实例11用户登录用户登录天行健,君子以自强不息数据库实例 吴雪峰实例实例2DropDownList2DropDownList案例案例v建立数据表天行健,君子以自强不息数据库实例 吴雪峰实例实例2DropDownList2DropDownList案例案例vprotected void Page_Load(object sender,EventArgs e)v v /绑定省份DropDownList案例v if(!this.IsPostBack)v v DataBindProvince();/绑定省份v v 天行健,君子以自强不息数据库实例 吴雪峰vprotected void DataBindP
6、rovince()v v string sql;v sql=select*from db_Province;v DataTable dt;v dt=Class1.GetDsFromSql(sql).Tables0;v dpProvince.DataSource=dt;v dpProvince.DataBind();v 实例实例2DropDownList2DropDownList案例案例天行健,君子以自强不息数据库实例 吴雪峰vv v v v v a id=noticetitle target=_blank href=v v v v v v 实例实例3DataList3DataList案例案例天
7、行健,君子以自强不息数据库实例 吴雪峰v protected void dpProvince_SelectedIndexChanged(object sender,EventArgs e)v v BindUniversity();/绑定大学v v protected void BindUniversity()v v string sql;v sql=select*from db_University where provinceName=+dpProvince.SelectedValue.Trim()+;v DataTable dt=Class1.GetDsFromSql(sql).Table
8、s0;v dlUniversityProv.DataSource=dt;v dlUniversityProv.DataBind();v 实例实例3DataList3DataList案例案例天行健,君子以自强不息数据库实例 吴雪峰实例实例4 4 制作页面滚动新闻制作页面滚动新闻1、设置数据表:PM_notice 、设置datalist控件 a id=noticetitle target=_blank href=()天行健,君子以自强不息数据库实例 吴雪峰实例实例4 4 制作页面滚动新闻制作页面滚动新闻2、后台代码:protected void Page_Load(object sender,Ev
9、entArgs e)if(!IsPostBack)BindInfo();/绑定新闻 protected void BindInfo()string sql;sql=select*from PM_notice;DataTable dt=Class1.GetDsFromSql(sql).Tables0;dlnotice.DataSource=dt;dlnotice.DataBind();天行健,君子以自强不息数据库实例 吴雪峰实例实例4 4 制作页面滚动新闻制作页面滚动新闻3、新闻超链接页面设置:天行健,君子以自强不息数据库实例 吴雪峰实例实例4 4 制作页面滚动新闻制作页面滚动新闻4、新闻超链接
10、页面后台代码设置:if(!IsPostBack)string sql;int noticeID;noticeID=Convert.ToInt32(Requestid.ToString();sql=select*from PM_notice where noticeID=+noticeID;DataTable dt=Class1.GetDsFromSql(sql).Tables0;lblTitle.Text=dt.Rows0title.ToString();lblCont.Text=dt.Rows0content.ToString();Response.Write();天行健,君子以自强不息数据
11、库实例 吴雪峰实例实例5 datagrid5 datagrid控件的使用控件的使用前台代码:AutoGenerateColumns=falsevv v v v v v v v v v v v v v v 天行健,君子以自强不息数据库实例 吴雪峰 protected void Page_Load(object sender,EventArgs e)NoticeDataBind();protected void NoticeDataBind()string sql;sql=select*from PM_notice;DataTable dt=Class1.GetDsFromSql(sql).Tab
12、les0;dgNotice.DataSource=dt;dgNotice.DataBind();实例实例5 datagrid5 datagrid控件的使用控件的使用后台代码:天行健,君子以自强不息数据库实例 吴雪峰实例实例5 datagrid5 datagrid控件的使用控件的使用 如何分页显示?如何分页显示?如何让所有记录分页显示?1.前台页面设置天行健,君子以自强不息数据库实例 吴雪峰 实例实例5 datagrid5 datagrid控件的使用控件的使用 如何分页显示?如何分页显示?天行健,君子以自强不息数据库实例 吴雪峰v2、后台代码设置 protected void dgNotice_
13、PageIndexChanged(object source,DataGridPageChangedEventArgs e)dgNotice.CurrentPageIndex=e.NewPageIndex;NoticeDataBind();实例实例5 datagrid5 datagrid控件的使用控件的使用 如何分页显示?如何分页显示?天行健,君子以自强不息数据库实例 吴雪峰实例实例6 6 后台数据维护后台数据维护 数据删除数据删除 v数据删除 前台代码 天行健,君子以自强不息数据库实例 吴雪峰v后台代码:protected void dgNotice_DeleteCommand(object
14、 source,DataGridCommandEventArgs e)string id=dgNotice.DataKeyse.Item.ItemIndex.ToString();string sqlStr=delete from PM_notice where;sqlStr+=noticeID=+id.ToString()+;if(Class1.ExecuteSql(sqlStr)NoticeDataBind();else lblinfo.Text=删除失败!;实例实例6 6 后台数据维护后台数据维护 数据删除数据删除 天行健,君子以自强不息数据库实例 吴雪峰v如何在删除时提示?思考?求助网
15、络实例实例6 6 后台数据维护后台数据维护 数据删除数据删除 天行健,君子以自强不息数据库实例 吴雪峰v如何在删除时提示?protected void dgNotice_ItemDataBound(object sender,DataGridItemEventArgs e)/提示 LinkButton hint=e.Item.FindControl(sc)as LinkButton;if(hint!=null)hint.Attributes.Add(onclick,var d=您确定要删除该条记录吗?;return window.confirm(d););实例实例6 6 后台数据维护后台数据维
16、护 数据删除数据删除 天行健,君子以自强不息数据库实例 吴雪峰v添加数据 前台代码实例实例6 6 后台数据维护后台数据维护 :添加数据:添加数据 天行健,君子以自强不息数据库实例 吴雪峰实例实例6 6 后台数据维护后台数据维护 :添加数据:添加数据 过期时间:内容:备注:天行健,君子以自强不息数据库实例 吴雪峰实例实例6 6 后台数据维护后台数据维护 :添加数据:添加数据 后台代码:/查看是否为合法用户if(!IsPostBack)if(SessionUserName=null|SessionUserName.ToString()=)/未登录,无权查看 Response.Redirect(/d
17、ataBaseTest.aspx);天行健,君子以自强不息数据库实例 吴雪峰实例实例6 6 后台数据维护后台数据维护 :添加数据:添加数据 string title,content,uploader,uploadTime,changeTime,deadline,remark;DateTime today=DateTime.Now;title=txtTitle.Text;content=txtContent.Text;uploader=SessionuserName.ToString();uploadTime=today.ToString(yyyy-MM-dd hh:mm:ss);changeT
18、ime=today.ToString(yyyy-MM-dd hh:mm:ss);deadline=txtDeadline.Text;remark=txtRemark.Text;if(deadline=)deadline=today.AddDays(3).ToString(yyyy-MM-dd hh:mm:ss);if(title=|content=)lblInfo.Text=请输入相关信息!;天行健,君子以自强不息数据库实例 吴雪峰实例实例6 6 后台数据维护后台数据维护 :添加数据:添加数据 else string sqlStr=insert into PM_notice(title,con
19、tent,uploader,uploadTime,changeTime,deadline,remark);sqlStr+=values(+title+,;sqlStr+=+content+,;sqlStr+=+uploader+,;sqlStr+=+uploadTime+,;sqlStr+=+changeTime+,;sqlStr+=+deadline+,;sqlStr+=+remark+);if(Class1.ExecuteSql(sqlStr)lblInfo.Text=添加成功!;else lblInfo.Text=添加失败!;天行健,君子以自强不息数据库实例 吴雪峰实例实例7 7 后台数
20、据维护后台数据维护 :选择数据:选择数据 _ _绑定绑定 点击“选择”:将相关内容显示在下方对应的文本框中。天行健,君子以自强不息数据库实例 吴雪峰实例实例7 7 后台数据维护后台数据维护 :选择数据:选择数据 _ _绑定绑定 点击“选择”:将相关内容显示在下方对应的文本框中。前台代码。天行健,君子以自强不息数据库实例 吴雪峰实例实例7 7 后台数据维护后台数据维护 :选择数据:选择数据 _ _绑定绑定 点击“选择”:将相关内容显示在下方对应的文本框中。后台代码 protected void dgNotice_SelectedIndexChanged(object sender,EventAr
21、gs e)/选择 int index=dgNotice.SelectedIndex;string id=dgNotice.Itemsindex.Cells0.Text.Trim();DataBindNoticeSelect(id);protected void DataBindNoticeSelect(string id)/选择后绑定数据 string sqlStr=select*from PM_notice where;sqlStr+=noticeID=+id.ToString().Trim()+;DataTable dt=Class1.GetDsFromSql(sqlStr).Tables
22、0;txtTitle.Text=dt.Rows0title.ToString();txtContent.Text=dt.Rows0content.ToString();txtDeadline.Text=dt.Rows0deadline.ToString();txtRemark.Text=dt.Rows0remark.ToString();天行健,君子以自强不息数据库实例 吴雪峰实例实例8 8 后台数据维护后台数据维护 :更新数据:更新数据 protected void btnUpdate_Click(object sender,EventArgs e)/数据更新 string sqlStr=u
23、pdate PM_notice set;sqlStr+=title=+txtTitle.Text+,;sqlStr+=deadline=+txtDeadline.Text+,;sqlStr+=content=+txtContent.Text+,;sqlStr+=remark=+txtRemark.Text+;sqlStr+=where noticeID=+dgNotice.ItemsdgNotice.SelectedIndex.Cells0.Text.Trim()+;if(Class1.ExecuteSql(sqlStr)lblInfo.Text=更新成功!;NoticeDataBind();else lblInfo.Text=更新失败!;天行健,君子以自强不息数据库实例 吴雪峰C l i c k t o e d i t c o m p a n y s l o g a n .