C#连接数据库SQL(2005)
首先来总结一下进行数据库编程的全过程,这里用的是SQL SERVER
1) 建立SqlConnection对象以连接数据库
SqlConnection mysqlconnection=new SqlConnection("Server=localhost; database=yourdatabase;uid=sa;pwd=sa");
2) 建立SqlCommand对象
SqlCommand mysqlcommand=mysqlconnection.CreateCommand();
3) 设置SqlCommand对象的CommandText属性
mysqlcommand.CommandText="SELECT * FROM youydatabasetablename";
4) 打开SqlConnection对象
mysqlconnection.open();
5) 运行SELECT语句
SqlDataReader mysqldatareader=mysqlcommand.ExecuteReader();
此处疑惑,还望高手解答:
此处没有SqlDataReader mysqldatareader=new SqlDataReader();而是直接执行,可以吗?
如果没有new创建对象,后面的(8)mysqldatareader.Close(); 需要关闭吗?谢谢高人解答!!!
6) 用SqlDataReader对象读行
mysqldatareader.Read();
7) 显示SqlDataReader对象中的数值
yourtextbox.Text=mysqldatareader["ID"].ToString(); //ID是你数据库中的一项列名
8) 关闭SqlDataReader对象
mysqldatareader.Close();
此处疑惑,还望高手解答:
需要关闭mysqlcommand吗 即mysqlcommand.Close() 还是因为调用了CreateCommand()方法而不需要关闭吗?
9) 关闭SqlConnection对象
mysqlconnection.Close();
下面把过程呈现出来.
1、在我的程序中用的是SQL,所以在程序头前加上
using System.Data.SqlClient;
2、在Form1中加入应有的控件,用于显示数据.
3、申请变量
static private int m = 1; // 显示每条记录 static private int k; // 得到记录条数 SqlCommand mysqlcommand; SqlConnection mysqlconnection;
4、连接数据库,注意这里的连接字符串,用的是安全类型
try { mysqlconnection = new SqlConnection("server=localhost; Integrated Security=True;Database=myfriends"); mysqlcommand = mysqlconnection.CreateCommand(); //得到记录条数 mysqlcommand.CommandText = "SELECT COUNT(*) FROM Friends"; mysqlconnection.Open(); k = (int)mysqlcommand.ExecuteScalar(); GetData(1); } catch (SqlException ex) { MessageBox.Show("A SqlException was thrown,Number = " + ex.Number + //错误号 ex.Message + //错误描述字符串 ex.StackTrace); //抛出异常的类名和方法名字符串 }
5、如果数据库中有多条记录就要逐条显示
在逐条显示的按钮事件中:
m += 1; //下一条索引值 if (m > k) { MessageBox.Show("最后一条!将显示第一条记录!", "信息提示"); m = 1; } this.hisname.Text = ""; //要显示下条,当然先清空 this.hissex.Text = ""; this.hisadress.Text = ""; this.hisbirthday.Text = ""; GetData(m); //显示下第数据
6、在显示数据中用到显示下一条函数
private void GetData(int i) { mysqlcommand.CommandText = "SELECT ID,Name,Sex,"+ "birthday,address FROM Friends WHERE ID="+i; SqlDataReader mysqldatareader = mysqlcommand.ExecuteReader(); mysqldatareader.Read(); this.hisname.Text = mysqldatareader["Name"].ToString(); this.hissex.Text = mysqldatareader["Sex"].ToString(); this.hisadress.Text = mysqldatareader["Address"].ToString(); this.hisbirthday.Text = mysqldatareader["Birthday"].ToString(); mysqldatareader.Close(); }
原文: C#连接数据库SQL(2005)
版权所有: 本文系米扑博客原创、转载、摘录,或修订后发表,最后更新于 2017-11-18 21:28:37
侵权处理: 本个人博客,不盈利,若侵犯了您的作品权,请联系博主删除,莫恶意,索钱财,感谢!
转载注明: C#连接数据库SQL(2005) (米扑博客)