此代碼成功地在SQL數據庫中插入一個新值,但僅當我插入常量值時。
我需要幫助,它在下面的代碼中說**(?)**
,我想在代碼中插入新值而不指定常量。 我的意思是,我希望能夠在輸出窗口中鍵入任何隨機值,並將其插入到SQL數據庫中。使用c插入sql#
private void InsertInfo()
{
String strConnection = "Data Source=HP\\SQLEXPRESS;database=MK;Integrated Security=true";
SqlConnection con = new SqlConnection(strConnection);
string connetionString = null;
SqlConnection connection ;
SqlDataAdapter adapter = new SqlDataAdapter();
connetionString = @"Data Source=HP\SQLEXPRESS;database=MK;Integrated Security=true";
connection = new SqlConnection(connetionString);
string sql = "insert into record (name,marks) **values(?))";**
try
{
connection.Open();
adapter.InsertCommand = new SqlCommand(sql, connection);
adapter.InsertCommand.ExecuteNonQuery();
MessageBox.Show ("Row inserted !! ");
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
private void insert_Click(object sender, EventArgs e)
{
InsertInfo();
}
使用參數: http://stackoverflow.com/questions/10718822/ado-net-how-to-add-parameter-if-i -use-connection-class-in-a-separate-file – 2013-02-25 08:21:44
同意@AlexeyRaga。您的代碼容易受到SQL注入的攻擊。 – SchmitzIT 2013-02-25 08:26:52
@SchmitzIT問題**中顯示的代碼不容易受到SQL注入的影響;它不顯示任何數據值被連接到TSQL。它顯示了一些不完整的SQL工作,但這很好 - 我們可以幫助解決這個問題。請不要危言聳聽。 – 2013-02-25 08:28:00