(1)C#之ADO.Net基础

今天开通了博客,准备培养一下随手写博客的习惯,虽然写得很烂,但是还是慢慢练习,轻喷哈~。下面进入主题。

 
ADO.net是一组用于对数据库进行操作的.net类,这组类很强大,博主也在一点一点的学习中。
 
在WPF中创建一个按钮控件(button),然后在这个按钮的Click事件中写下
 1  private void btn1_Click(object sender, RoutedEventArgs e)
 2         {
 3              using (SqlConnection conn = new SqlConnection("Data Source=PC201411200011;Initial Catalog=Demo;Integrated Security=True"))
 4             {
 5                 conn.Open();
 6                 using (SqlCommand cmd = conn.CreateCommand())
 7                 {
 8                     cmd.CommandText = "Insert into Student (name,age,height) values('xuweixi',25,180)";
 9                     cmd.ExecuteNonQuery();
10  
11                     cmd.CommandText = "select count(*) from Student where age<50";
12  
13                     int i = (int)cmd.ExecuteScalar();
14                     MessageBox.Show(i.ToString());
15  
16  
17                     cmd.CommandText = "select * from Student";
18                     using (SqlDataReader reader = cmd.ExecuteReader())
19                     {
20                         while (reader.Read())
21                         {
22                             string name = reader.GetString(0);
23                             int age = reader.GetInt32(1);
24                             int height = reader.GetInt32(2);
25                             MessageBox.Show("名字"+name+"年龄"+age.ToString()+"身高"+height.ToString());
26  
27                         }
28                     }
29  
30                 }
31             }
32             MessageBox.Show("执行完成");
33         }
◇以上代码其中using是一个简化资源释放的对象,实现了IDisposible利用using关键字进行回收。
  用法:和using平行的大括号的代码离开大括号后,using后面小括号中的对象资源就被自动释放。
 
◇ExecuteNonQuery()方法的作用是执行SQL语句,成功以后然后返回一个整型变量,这个整形变量是这样规定     的:
   ①如果这个SQL语句是对数据库的记录进行操作,则返回的的是影响数据库的记录数
   ②如果这个SQL语句是创建一个表,则创建成功后返回-1
 
◇ExecuteScalar()方法的作用是执行SQL语句,(如果是查询语句)返回查询结果的第一行第一列(可以用来查询总记录数等)。其他情况最好不要用ExcuteScalar()方法。ExecuteScalar()最好的使用情况是使用在执行结果只有一行一列的。
 
◇ExecuteReader()方法的作用是执行SQL语句,(如果是查询语句)则返回一个SqlDataReader类型的结果集,可以通过SqlDataReader对象中的Read()方法逐条读取数据(如上述代码)。
Read方法用法:每次Read()以后指向结果集中的下一条数据,如果存在返回true,如果不存在,则返回fasle。
 
◇(附)SQL Server 和.NET的变量对应关系:
             int                   int 
             bigint             long(长整型)
             nchar             string
             bit(0,1)           bool
原文地址:https://www.cnblogs.com/kaolalovemiaomiao/p/4707537.html