我是.net和sql的新手。我試圖將DateTime存儲到數據庫中,但我在11:21:57上午接收到「11'附近語法錯誤」的異常。我運行我的代碼,因此我在時間上出錯。這是我的代碼,用於存儲到數據庫中。 下面的方法將返回一個查詢。如何在sql server 2008 R2中存儲.net的DateTime
public string InsertADData(string strdateLogin, string strdateLogout, string strName, string strUsername)
{
DateTime dateLogin = Convert.ToDateTime(strdateLogin);
DateTime dateLogout = Convert.ToDateTime(strdateLogout);
return string.Format(@"INSERT INTO ADTimeData (LoginDate, LogoutDate,name,username)
VALUES ({0},{1},'{2}','{3}')", dateLogin,
dateLogout,
strName.Replace("'", "''"),
strUsername.Replace("'", "''"));
}
此方法用於將記錄插入到數據庫中。這裏CheckDBConnection()會打開sql連接。
public void InsertRecords(String strQuery)
{
CheckDBConnection();
using (SqlCommand cmd = new SqlCommand())
{
cmd.Connection = _con;
cmd.CommandText = strQuery;
cmd.CommandType = CommandType.Text;
cmd.ExecuteNonQuery();
}
}
當我調試,我已經寫了我得到的查詢即sqlquery的價值就像這
INSERT INTO ADTimeData (LoginDate, LogoutDate,name,username)
VALUES (1/4/2013 11:21:57 AM,1/4/2013 11:21:57 AM,'raivnder','[email protected]')
但我在
cmd.ExecuteNonQuery();
變得異常的異常顯示的代碼下面的圖像。
請幫助我。
就個人而言,我不會刻意想着正確的語法,但只要使用['SqlParameter's](http://msdn.microsoft.com/en- us/library/system.data.sqlclient.sqlparameter.aspx)。 –