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();

}

转载声明:本帖转自 http://www.cnblogs.com/bober/articles/640740.html

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券