私は .net と sql が初めてです。DateTime をデータベースに保存しようとしていますが、午前 11:21:57 に「'11' 付近の構文が正しくありません」という例外が発生します。コードを実行すると、時間にエラーが発生します。これは、データベースに格納するための私のコードです。以下のメソッドはクエリを返します。
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','ravinder.g@gmail.com')
しかし、私は例外を取得しています
cmd.ExecuteNonQuery();
例外は下の画像に示されています。
私を助けてください。