一、知识描述点
1、SqlConnection
(1)使用SqlConnection类可以连接到SQL Server数据库。SqlConnection对象的主要属性和方法如下:
——属性:ConnectionString(连接字符串)
——方法:Open(打开数据库连接)
Close(关闭数据库连接)
(2)连接数据库主要分以下三步:
——定义字符串
——创建SqlConnection对象,代码如下:
SqlConnection sqlConnection = new SqlConnection();
——打开数据库连接,代码如下:
sqlConnection.Open();
2、SqlCommand
(1)SqlCommand对象用于执行具体的SQL语句,如增加、删除、修改、查找。SqlCommand对象的使用步骤如下。
——创建SqlConnection对象。
——定义SQL语句。
——创建SqlCommand对象。
——调用SqlCommand对象的某个方法,执行SQL语句。
二、思维导图
三、相关代码范例
1、用户注册代码
2、注意问题
下图这种密码赋值很容易受到注入式攻击
所输入的这些字符改了原代码,我们来分析下为什么
‘ ) or 1=1 ;--
(1)or前后只要有一方成立则为成立,而1=1是一个恒成立的等式。
(2)--会注释掉后面所输入的任何代码。
为了解决这个问题可以使用如下带参数代码:
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;