第二周学习笔记

ADO.Net之SqlConnection、 Sqlcommand的应用学习笔记

 

一、ADO.NET与SQL连接

二、相关知识点

 

1、 SqlConnection

SqlConnection表示一个到 SQL Server 数据库的打开的连接。此类不能被继承。

SqlConnection 对象表示单个会话中对 SQL Server 数据源。 在客户端/服务器数据库系统中,它等效于一个到服务器的网络连接。 当连接到 Microsoft SQL Server 数据库时,SqlConnection 与 SqlDataAdapter和 SqlCommand 一起使用来提高性能。 对于所有第三方 SQL Server 产品,同时,其他 OLEDB 支持数据源,请使用 OleDbConnection。

 

2、SqlCommand

用于C#编程时对数据库进行操作的类名。C# 中位于SqlClient中的一个类。表示要对SQLSERVER数据库进行操作。SqlCommand对象允许你指定在数据库上执行的操作的类型。

 

SqlCommand类的属性:

1.CommandText 

获取或设置要对数据源执行的Transact—SQL语句或存储过程的名称。

2. CommandType 

获取或设置一个值,该值指示如何解释CommandText属性。

3.Connection 

获取或设置SqlCommand的实例使用的SqlConnection。

4.CommandTimeOut  

获取或设置在终止执行命令的尝试并生成错误之前的等待时间。

 

SqlCommand类的方法

1.ExecuteNonQuery(); 

    它的返回值类型为int型。多用于执行增加,删除,修改数据。返回受影响的行数。当select操作时,返回-1。

2.ExecuteReader(); 

    它的返回类型为SqlDataReader。此方法用于用户进行的查询操作。使用SqlDataReader对象的Read();方法进行逐行读取。

3.ExecuteScaler(); 

    它的返回值类型多位int类型。它返回的多为执行select查询。得到的返回结果为一个值的情况,比如使用count函数求表中记录个数或者使用sum函数求和等。

 

三、实例

private void btn_zhuce_Click(object sender, EventArgs e)

        {

            if (this.txb_UserNo.Text.Trim() == "")                                                     

            {

                MessageBox.Show("用户号不为空!");                                                   

                this.txb_UserNo.Focus();                                                                

                return;                                                                                

            }

            if (this.txb_Password.Text.Trim() == "")                                                   

            {

                MessageBox.Show("密码不能为空!");                                                     

                this.txb_Password.Focus();                                                             

                return;                                                                                

            }

           SqlConnection sqlConnection = new SqlConnection();                                         

sqlConnection.ConnectionString="Server=HSP07;Database=

EduBaseDemo;IntegratedSecurity=false;Uid=jsj;Password=2wsx@WSX";                        

 SqlCommand sqlCommand = sqlConnection.CreateCommand();                                                  sqlCommand.CommandText ="INSERT tb_User (No,Password) VALUES(@No,HASHBYTES('MD5',@Password));";                

sqlCommand.Parameters.AddWithValue("@No", this.txb_UserNo.Text.Trim());                               sqlCommand.Parameters.AddWithValue("@Password", this.txb_Password.Text.Trim());

sqlCommand.Parameters["@Password"].SqlDbType = SqlDbType.VarChar;                                                                                                                                 

            sqlConnection.Open();                                                                      

            int rowAffected = sqlCommand.ExecuteNonQuery();                                            

            sqlConnection.Close();                                                                      

            if (rowAffected == 1)                                                                      

            {

                MessageBox.Show("注册成功。");                                                         

            }

            else                                                                                       

            {

                MessageBox.Show("注册失败!");                                                         

            }

        }

    }

}

 

猜你喜欢

转载自www.cnblogs.com/hsp9/p/9657064.html