C# 连接 SQL

36 篇文章 1 订阅
总算把这起步的路走了.
首先来总结一下进行数据库编程的全过程,这里用的是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();
(6)用SqlDataReader对象读行
mysqldatareader.Read();
(7)显示SqlDataReader对象中的数值
yourtextbox.Text=mysqldatareader["ID"].ToString();
//ID是你数据库中的一项列名
(8)关闭SqlDataReader对象
mysqldatareader.Close();
(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();
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值