C#链接SQL serve的简单操作

转载自:https://blog.csdn.net/sinat_34328764/article/details/71177631

这几天一直在写数据库的课程设计,中间要用到C#连接SQL service数据库,找了好多资料,感觉有点乱,其实最基础的数据库操作无非就是数据库的插入与查询,在这里暂且记下,以备后用。

1.数据库查询操作

首先是数据库部分,在这里不做赘述,首先要建立一个测试用的数据库,建立几张表,最麻烦的是数据库的登录名创建上,容易出各种错=_=,不过仔细调几遍就好了,其实常见错误就是服务没有启动之类的,在网上搜索错误代号就OK了,下面进入正题,在例子里,首先是在数据库中查询到符合的数据,然后再保存到WPF程序中的一个DataGrid中。
首先是引用上,要写上两个引用:
[csharp]  view plain  copy
  1. using System.Data;  
  2. using System.Data.SqlClient;  


就是这样子。

然后第二步是创建连接数据库对象,在例子里,我直接在一个button的click事件里面写了(比较偷懒,但是都差不多,你可以把这些代码放在你要用的地方);

上代码:

[csharp]  view plain  copy
  1. private void button_Click(object sender, RoutedEventArgs e)  
  2.  {  
  3.      string con = "Server=.;Database=DatabaseDesign;user id=sa;pwd=1996";  //这里是保存连接数据库的字符串  
  4.      string sql = "select * from Thesis where TType='txt'";                //SQL查询语句  
  5.   
  6.      SqlConnection mycon = new SqlConnection(con);                        //创建SQL连接对象  
  7.   
  8.      mycon.Open();                                                        //打开  
  9.      SqlDataAdapter myda = new SqlDataAdapter(sql, con);                  //实例化SqlDtatAdapter并执行SQL语句,至于什么是SQLDataAdapter,  
  10.                                                                           //就是用来连接DataSet与数据库的,DataSet是C#中用来保存数据库数据的,  
  11.                                                                           //在这里没有用DataSet,不过原理是一样的,SQLDataAdapter从数据库中取得数据  
  12.                                                                           //然后再DataSet中创建列与行来填充,个人理解。  
  13.      DataTable dt = new DataTable();                                     //创建DtatTable实例  
  14.      myda.Fill(dt);                                                      //填充table  
  15.      dataGrid.ItemsSource = dt.DefaultView;                              //这里在WPF界面中拖拽一个DataGrid,然后用DataTable进行填充。  
  16.   
  17.  }  
然后运行就可以了,在这里我是用的WPF页面,运行如下:


2.在数据库中插入数据

其实作为最基础的内容,语句都差不多,只有细微的变化。
[csharp]  view plain  copy
  1. private void button1_Click(object sender, RoutedEventArgs e)  
  2.  {  
  3.      string str1 = txtTitle.Text;  
  4.      string str2 = txtAuthor.Text;                                    //获取文本框中的数据  
  5.   
  6.      string con = "Server=.;Database=DatabaseDesign;user id=sa;pwd=1996";  
  7.      string sql = "insert into Thesis(TName, TAuthor) values('" + str1 + "','" + str2 + "')";  
  8.   
  9.      SqlConnection mycon = new SqlConnection(con);                       //这部分与上面的查询操作是一样的  
  10.      mycon.Open();  
  11.      try                                                                //注意写在try-catch语句,要不然估计没法运行=_=  
  12.      {  
  13.          SqlCommand sqlman = new SqlCommand(sql, mycon);                 //这里的SqlCommand表示要进行一次数据库的操作  
  14.          if (sqlman.ExecuteNonQuery() != 0)                              //执行数据库语句并返回一个int值(受影响的行数)  
  15.          {  
  16.              MessageBox.Show("插入数据成功!");  
  17.          }  
  18.      }  
  19.      catch (Exception)  
  20.      {  
  21.          MessageBox.Show("插入数据错误!");  
  22.      }  
  23.       
  24.  }  



可以看到数据库中插入了这条信息。


这里还牵扯到一个问题,估计都对SqlCommand与SqlAdapter有点疑惑吧,这两个都是做什么的,简单说,前者是执行数据库语句的老大哥,几乎所有的数据库操作都要用打这个,毕竟老大哥精力有限,所以不可能每件事都做得很出色,但是后者就要专业很多了,它强化了一部分功能,就像上面的例子中,我们获取到了数据库中的数据,而且还填充到了table中,具体的区别还有很多,也有很多dalao的博客写到了这个问题。这里就不细说了。
嗯,就酱~  <( ̄︶ ̄)↗[GO!]
转载自: https://blog.csdn.net/sinat_34328764/article/details/71177631

猜你喜欢

转载自blog.csdn.net/c_living/article/details/79993849