一、知識描述點
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;