を使用している間、私は、INSERT INTO文で、」構文エラーを取得していますが、私は理由を理解することはできません。構文エラーのDateTime
私は仕事が見つけることを行っている他の人に文を比較し、見つけることができます構造上の違いはありません。唯一の違いは、この1つでは、私のMS AccessデータベースにDateTimeを保存しようとしていることです。
私はMS AccessのデータベースフィールドをDate/Timeの一般的なフォーマット
ブレークポイントを設定してそれをフォローすると、私は渡されるDateTime形式が正しいことと、MS Accessの一般形式と一致することがわかります。
私は問題が正しいと確信していますが、私はそれを見ることができれば私はうんざりです。ここに私のコードは次のとおりです。
//method to save user input to database
public static void SaveData(ProgramLoginBOL busObject)
{
try
{
String sSQLCommand = "INSERT INTO ProgramLogin (" +
"UserName, DateTime) VALUES ('" + busObject.UserName +
"','" + busObject.DtDate + "')";
if (aConnection.State == ConnectionState.Closed)
{
aConnection.Open();
}
OleDbCommand cmd = aConnection.CreateCommand();
cmd.CommandText = sSQLCommand;
// Execute the SQL command
cmd.ExecuteNonQuery();
aConnection.Close();
MessageBox.Show("Data Saved");
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
MessageBox.Show("Error! Data was not saved.");
}
}
私が述べたように、デバッグがbusObject.DtDate
は、MS Accessの日付/時刻の形式と一致していることを
あなたはSQLインジェクションの脆弱性があります。パラメータを使用する必要があります。 – SLaks
ありがとうございます。 –