c#中與數據庫打交道,免不了要用到各種sql語句,而給sql語句傳參數也是不可避免的。以下是我在此方面上的一點總結(高手勿見笑):
1> 直接寫入法:
例如:
int Id =1;
string Name="lui";
cmd.CommandText="insert into TUserLogin values("+Id+",'"+Name+"')";
因為Id是數值,所以在傳遞的時候只需要在sql字符串中用"+Id+"即可實現,而 Name是字符串,所以在傳遞的時候還需要在"+Name+"兩邊各加一個單引號(')來 實現;
2>給命令對象添加參數法:
例如:
int Id =1;
string Name="lui";
cmd.CommandText="insert into TUserLogin values(@Id,@Name)";
//上條語句中直接在sql語句中寫添加的參數名,不論參數類型都是如此.
SqlParameter para=new SqlParameter("@Id",SqlDbType.int,4);//生成一個名字為@Id的參數,必須以@開頭表示是添加的參數,并設置其類型長度,類型長度與數據庫中對應字段相同
para.Value=Id;//給參數賦值
cmd.Parameters.Add(para);//必須把參數變量添加到命令對象中去。
//以下類似
para=new SqlParameter("@Name",SqlDbType.VarChar,16);
para.Value=Name;
com.Parameters.Add(para);
...然后就可以執行數據庫操作了。
|
新聞熱點
疑難解答