传智播客学习日记]ADO.Net连接与增删改查
来源:互联网 发布:sybase数据库win7 编辑:程序博客网 时间:2024/05/22 07:56
[传智播客学习日记]ADO.Net连接与增删改查
Posted on 2011-11-04 20:52 Elijah 阅读(208) 评论(0) 编辑 收藏今天学习基本的ADO,就是通过C#程序代码来操控数据库,其实说白了还是一堆函数,程序可越来越有英语课的感觉了。
为了省事,不写try什么的了。首先是最基本的登录和断开连接:
1 #region 登陆数据库 2 //创建一个连接对象 3 SqlConnection con = new SqlConnection(); 4 5 //连接字符串(可以在左边服务器资源管理器里自动生成): 6 //Data source=服务器名(IP地址)\实例名; 7 //Initial Catalog=数据库名; 8 //Integrated Security=True 集成身份验证 9 //User ID=xxx;Password=xxx 用户名密码登陆10 string constr = @"Data source=IT-129\SQLEXPRESS;Initial Catalog=ItCastCn;Integrated Security=True";11 12 //让字符串和SqlConnection对象关联13 con.ConnectionString = constr;14 15 //打开连接(避免重复打开)16 if (con.State == System.Data.ConnectionState.Closed)17 {18 con.Open();19 }20 #endregion21 22 #region 关闭数据库23 //关闭连接24 con.Close();25 26 //释放非托管资源27 con.Dispose();28 #endregion
增删改都要使用SqlCommand的ExecuteNonQuery方法,下面这个例子从窗体中读取用户输入,并且修改数据库:
1 private void button1_Click(object sender, EventArgs e) 2 { 3 //从控件中取得字符串 4 string autoId = txt_autoId.Text.Trim(); 5 string BrandName = txt_BrandName.Text.Trim(); 6 string Price = txt_Price.Text.Trim(); 7 8 //建立连接字符串 9 string constr = @"Data source=IT-129\SQLEXPRESS;Initial Catalog=ItCastCn;Integrated Security=True";10 11 //新建一个SqlConnection对象con对数据库进行控制(连接器)12 using (SqlConnection con = new SqlConnection(constr))13 {14 //定义SQL语句15 string sql = string.Format16 (17 "update T1 " +18 "set BrandName='{0}', price={1} " +19 "where autoId = {2}" ,20 BrandName, Price, autoId21 );22 23 //定义一个SqlCommand对象cmd(操作器),参数是SQL语句和连接器24 using (SqlCommand cmd = new SqlCommand(sql, con))25 {26 //Open操作尽量晚27 if (con.State == System.Data.ConnectionState.Closed)28 {29 con.Open();30 }31 //执行SQL语句,返回影响了几条32 int r = cmd.ExecuteNonQuery();33 34 //Close操作尽量早35 con.Close();36 MessageBox.Show("已成功修改" + r + "条语句!");37 }38 }39 }
使用SqlDataReader输出整个表,假设一个表里有3列:
1 using (SqlConnection con = new SqlConnection(constr)) 2 { 3 string sql = "select * from dbo.ClassInfo"; 4 5 using (SqlCommand cmd = new SqlCommand(sql, con)) 6 { 7 if (con.State == System.Data.ConnectionState.Closed) 8 { 9 con.Open();10 }11 12 //这句话执行后并没有返回,存放在服务器的内存里13 SqlDataReader reader = cmd.ExecuteReader();14 using (reader)15 {16 if (reader.HasRows)17 {18 //读取每一行19 while (reader.Read())20 {21 //读取每一列22 //object obj1 = reader.GetValue(0);23 //object obj2 = reader.GetValue(1);24 //object obj3 = reader.GetValue(2);25 26 //下标方式,可以根据列名取数据27 //object obj1 = reader["ClassId"];28 //object obj2 = reader[1]; 29 //object obj3 = reader[2];30 31 //建议使用这种强类型的方式提高性能32 int obj1 = reader.GetInt32(0);33 string obj2 = reader.GetString(1);34 string obj3 = reader.GetString(2);35 36 Console.WriteLine("{0}\t|\t{1}\t|\t{2}", obj1, obj2, obj3);37 }38 }39 else40 {41 Console.WriteLine("x");42 }43 }44 45 con.Close();46 }47 }
如果在一条SQL语句当中有变量(以@开头),则可以这样:
1 cmd.Parameters.AddWithValue("@SQL变量名",值);
- 传智播客学习日记]ADO.Net连接与增删改查
- ADO.Net连接与增删改查
- ADO.NET增删改查
- ADO.NET 增删改查
- C# ADO.net连接数据库 进行增删改查操作
- ado.net EF 增删改查、分页
- ADO.NET数据增删查改操作
- ADO.NET两种连接模型简介及增删改查实例
- ASP.NET ---- 连接Access . 增删改查
- ASP.NET ---- 连接Access . 增删改查 .
- C#.Net中ADO.net数据增删查改操作
- 关于ADO.NET数据库操作中的增删改查讲解
- 实现数据库的增删改查(ADO.Net)
- ADO.NET基本数据操作(增删改查)
- ADO.NET对数据库进行增删查改
- ADO.NET 增删改查的基本用法
- 黑马程序员_学习日记70_721ASP.NET(Web三层增删查改CRUD)
- VB与ADO的用法 (增删改查)
- 二进制注册表数据应该怎样读取?
- web中翻页功能的实现
- MyEclipse中几个小的技巧
- Oracle中的几个问题记录
- jfreechart学习
- 传智播客学习日记]ADO.Net连接与增删改查
- jfreechart学习心得
- 与数据库连接的封装
- 数据库的一些操作方法
- struts 入门时的错误
- hibernate入门配置的错误
- 完整的Struts2讲义
- 错误记录与分析
- [转] Address already in use: JVM_Bind错误的解决