首页 ADO.net精华总结

ADO.net精华总结

举报
开通vip

ADO.net精华总结 protected void Page_Load(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(); conn.ConnectionString = "Data Source=127.0.0.1;Initial Catalog=number;Integrated Security=true"; conn.StateChange +...

ADO.net精华总结
protected void Page_Load(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(); conn.ConnectionString = "Data Source=127.0.0.1;Initial Catalog=number;Integrated Security=true"; conn.StateChange += new StateChangeEventHandler(conn_StateChange); conn.Open(); Response.Write(conn.ServerVersion+"
"); Response.Write(conn.PacketSize+"
"); Response.Write(conn.ConnectionTimeout + "
"); Response.Write(conn.DataSource + "
"); Response.Write(conn.ConnectionString + "
"); Response.Write(conn.Container + "
"); if (conn.State == ConnectionState.Open) { Response.Write("1
"); conn.Close(); } else { Response.Write("0"); } } protected void conn_StateChange(object sender,StateChangeEventArgs e) { Response.Write("StateChange from"+e.OriginalState+"to"+e.CurrentState+"
"); } protected void Page_Load(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(); conn.ConnectionString = "Data Source=127.0.0.1;Initial Catalog=number;Integrated Security=true"; conn.StateChange += new StateChangeEventHandler(conn_StateChange); conn.Open(); Response.Write(conn.ServerVersion+"
"); Response.Write(conn.PacketSize+"
"); Response.Write(conn.ConnectionTimeout + "
"); Response.Write(conn.DataSource + "
"); Response.Write(conn.ConnectionString + "
"); Response.Write(conn.Container + "
"); if (conn.State == ConnectionState.Open) { Response.Write("1
"); conn.Close(); } else { Response.Write("0"); } } protected void conn_StateChange(object sender,StateChangeEventArgs e) { Response.Write("StateChange from"+e.OriginalState+"to"+e.CurrentState+"
"); } DataSet是 ADO的核心成员 以离线的方式把数据存储在内存中 重用同样的行记录 以便通过缓存获得性能改善 比如说 排序、搜索、筛选 使用数据适配器来承接 DataSet和 Connection protected void Page_Load(object sender, EventArgs e) { if (this.IsPostBack==false) { SqlConnection conn = new SqlConnection(); conn.ConnectionString = "Data Source=127.0.0.1;DataBase=number;Integrated Security=true"; conn.Open(); SqlDataAdapter adapter = new SqlDataAdapter("select * from Student",conn); DataSet dataSet = new DataSet(); adapter.Fill(dataSet); this.GridView1.DataSource = dataSet; this.GridView1.DataBind(); } } 独立使用 DataSet创建一个 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 并且显示在数据绑定控件当中 protected void Page_Load(object sender, EventArgs e) { DataSet ds = new DataSet(); DataTable dt = new DataTable(); dt.Columns.Add("Sno",System.Type.GetType("System.Int32")); dt.Columns.Add("Sname", System.Type.GetType("System.String")); dt.Columns["Sno"].AutoIncrement = true; ds.Tables.Add(dt); ds.Tables[0].PrimaryKey = new DataColumn[] { ds.Tables[0].Columns["Sno"] }; DataRow dr = dt.NewRow(); dr[0] = "200907148"; dr[1] = "徐玉强"; dt.Rows.Add(dr); this.GridView1.DataSource = ds; this.GridView1.DataBind(); } DataView对象的使用 protected void Page_Load(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(); conn.ConnectionString = "Data Source=127.0.0.1;DataBase=number;Integrated Security=true"; conn.Open(); SqlDataAdapter adapter = new SqlDataAdapter("select * from Student",conn); DataSet dataSet = new DataSet(); adapter.Fill(dataSet); DataView dataView = new DataView(dataSet.Tables[0]); dataView.RowFilter="Sno<200907149"; DataView dataView02 = new DataView(dataSet.Tables[0]); dataView02.Sort = "Sno"; this.GridView1.DataSource = dataView; this.GridView1.DataBind(); this.GridView2.DataSource = dataView02; this.GridView2.DataBind(); } 创建了三个基于 web的服务 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 在线解决问题 public Service () { //如果使用设计的组件,请取消注释以下行 //InitializeComponent(); } [WebMethod] public string HelloWorld() { return "Hello World"; } [WebMethod(Description = "在输入的三个数中返回最大的一个")] public int Max(int a, int b, int c) { int max; if (a > b) max = a; else max = b; if (c > max) return c; else return max; } [WebMethod(Description = "从数据表中读取数据,以表格的形式显示出来。", EnableSession = false)] public string getmyTable(string ConnectionString, string SelectSQL) { string rsString; SqlConnection conn = new SqlConnection(); conn.ConnectionString = ConnectionString; SqlDataAdapter adapter = new SqlDataAdapter(SelectSQL,conn); DataSet ds = new DataSet(); adapter.Fill(ds,"myTable"); DataTable table=ds.Tables["myTable"]; rsString = @""; for (int i = 0; i <= ds.Tables["myTable"].Columns.Count - 1;i++) { rsString += ""; } rsString += ""; for (int i = 0; i < table.Rows.Count; i++) { rsString += ""; for (int j = 0; j <= ds.Tables["myTable"].Columns.Count - 1; j++) { rsString += ""; } rsString += ""; } rsString+="
" + ds.Tables["myTable"].Columns[i].ColumnName + "
" + table.Rows[i][j] + "
"; return rsString; } 1 被操作的多个数据库位于同一台物理机器上 cmd.CommandText = "select a.UserName ,b.goodName from number.dbo.UserInfo a,seve7en.dbo.goodInfo b"; 当被操作的数据库位于不同的物理机器上的时候 首先把其他数据库连接到当前的数据库服务器上 进入主操作数据库服务器的企业管理器。选中左侧树形图中的 安全 Security 右击 连 接服务器 (Linked Servers) 选中 “新建连接服务器”(new Linked Server··) 弹出新建连接窗口 选择安全性选项卡 选中“用此安全上下文进行”(Be Made Using this Security context) 填写登录名 密码 两台服务器 语句可以这样写 select A.*,B.* from MuCurrentTable A,MyLinkedServer.MyLinkedDB.dbo.MyLinkedTable B 绑定到简单的数据源 绑定数据源的格式是<%#DataSource %>
姓名:<%#name %>
邮箱:<%#email %>
电话:<%#num%>
绑定一个 ListBox 这个比较有用啊 protected void Page_Load(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(); conn.ConnectionString = "server=.;database=number;integrated security=true"; conn.Open(); SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = "select UserName from UserInfo"; ListBox1.DataSource = cmd.ExecuteReader(); ListBox1.DataTextField = "UserName"; ListBox1.DataValueField = "UserName"; ListBox1.DataBind(); conn.Close(); } 数据库的事务处理很重要 把一组数据库的操作合并为一个逻辑上的工作单元 可能导致两个极端的发展情况 一个是 所有操作都得到执行 一个是 没有任何操作得到执行 这对实时应用程序很重要 需要一个数据库连接和一个事务处理对象 protected void Button1_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(); conn.ConnectionString = "server=.;database=sev7en;integrated security=true"; conn.Open(); //启用事务 SqlTransaction tran = conn.BeginTransaction(); SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.Transaction = tran; try { cmd.CommandText = "update userinfo set Usermail='number1989@qq.com'where Username='number'"; cmd.ExecuteNonQuery(); cmd.CommandText = "update userinfo set Usermail='hello123@126.com'where Username='seven'"; cmd.ExecuteNonQuery(); tran.Commit();//提交事务 Response.Write(""); } catch(Exception ex) { tran.Rollback();//回滚事务 Response.Write(""); Response.Write(ex.ToString()); } } 这个都是很重要的啊 创建存储过程的步骤 1 创建存储过程 2 建立相应的数据库连接 3 指定存储过程名称 4 在程序中说明执行的类型是存储过程 5 若要执行的存储过程中有参数则必须填充 Parameter集合 6 执行存储过程 下面是不带参数的存储过程演示 首先在数据库中建立存储过程 此处略去 下面的一样 protected void Page_Load(object sender, EventArgs e) { ExecutebyCmd(); ExecutebyAdapter(); } private void ExecutebyCmd() {//通过 Command对象调用存储过程 SqlConnection conn = new SqlConnection(); conn.ConnectionString = "server=.;database=sev7en;Integrated Security=true"; conn.Open(); SqlCommand cmd = new SqlCommand(); cmd.CommandText = "P_Student";//调用在数据库中定义的存储过程 cmd.Connection = conn; cmd.CommandType = CommandType.StoredProcedure;//说明执行的是存储过程 try { cmd.ExecuteNonQuery();//执行存储过程 Response.Write(""); } catch { Response.Write(""); } } private void ExecutebyAdapter() { SqlConnection conn = new SqlConnection(); conn.ConnectionString = "server=.;database=sev7en;Integrated Security=true"; conn.Open(); SqlDataAdapter adapter = new SqlDataAdapter(); adapter.SelectCommand = new SqlCommand("P_Search",conn); adapter.SelectCommand.CommandType = CommandType.StoredProcedure; try { adapter.SelectCommand.ExecuteNonQuery();//执行存储过程 Response.Write(""); } catch { Response.Write(""); } } 下面是带参数的存储过程的演示 在应用过程中使用带参数的存储过程,在页面输入用户名、密码和电子邮件 单机保存按钮后调用存储过程把他们保存到数据表中 create table userinfo ( Username varchar(30), Userpassword varchar(50), Usermail varchar(30), ) 首先建立存储过程 create proc insertuserinfo @name varchar(30),@password varchar(50),@mail varchar(30) as insert into userinfo values(@name,@password,@mail) 然后这是带有参数的通过 Command对象调用存储过程的函数 private void ExecutebyCmd() {//通过 Command对象调用存储过程 SqlConnection conn = new SqlConnection(); conn.ConnectionString = "server=.;database=sev7en;Integrated Security=true"; conn.Open(); SqlCommand cmd = new SqlCommand(); cmd.CommandText = "insertuserinfo";//调用在数据库中定义的存储过程 cmd.Connection = conn; cmd.CommandType = CommandType.StoredProcedure;//说明执行的是存储过程 //建立参数对象,指定每个参数的类型、长度和值 SqlParameter[] parameters ={ new SqlParameter("@name",SqlDbType.VarChar,30), new SqlParameter("@password",SqlDbType.VarChar,50), new SqlParameter("@mail",SqlDbType.VarChar,30) }; parameters[0].Value = this.TextBox1.Text; parameters[1].Value = this.TextBox2.Text; parameters[2].Value = this.TextBox3.Text; //将参数对象传递给 SqlCommand对象 foreach(SqlParameter para in parameters){ cmd.Parameters.Add(para); } try { cmd.ExecuteNonQuery();//执行存储过程 Response.Write(""); } catch { Response.Write(""); } } 下面看一个含有参数的通过 DataAdapter对象调用存储过程的函数 private void ExecutebyAdapter() { SqlConnection conn = new SqlConnection(); conn.ConnectionString = "server=.;database=sev7en;Integrated Security=true"; conn.Open(); SqlDataAdapter adapter = new SqlDataAdapter();//构建数据适配器 adapter.SelectCommand = new SqlCommand("insertuserinfo", conn);//数据适配 器使用存储过程 adapter.SelectCommand.CommandType = CommandType.StoredProcedure; //建立参数对象,指定每个参数的类型、长度和值 SqlParameter[] parameters ={ new SqlParameter("@name",SqlDbType.VarChar,30), new SqlParameter("@password",SqlDbType.VarChar,50), new SqlParameter("@mail",SqlDbType.VarChar,30) }; parameters[0].Value = this.TextBox1.Text; parameters[1].Value = this.TextBox2.Text; parameters[2].Value = this.TextBox3.Text; //将参数对象传递给 SqlCommand对象 foreach (SqlParameter para in parameters) { adapter.InsertCommand.Parameters.Add(para); } try { adapter.SelectCommand.ExecuteNonQuery();//执行存储过程 Response.Write(""); } catch { Response.Write(""); } }
本文档为【ADO.net精华总结】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_822768
暂无简介~
格式:pdf
大小:257KB
软件:PDF阅读器
页数:11
分类:互联网
上传时间:2011-11-16
浏览量:8