nvarcharデータ型をdatetimeデータ型 に変換すると、範囲外の値が返されました。SQL内の例外日時
マイコード:
string sqlthem = "INSERT INTO Infosp1 VALUES (@khach,@sp,@sl,@gia,@tg)";
string sqlconvert = "select CONVERT(varchar(20),[Tg], 103) from Infosp1";
SqlCommand cmd = new SqlCommand(sqlthem, con);
cmd.Parameters.AddWithValue("Khach", cbbtenkh.Text);
cmd.Parameters.AddWithValue("Sp", cbbmahang.Text);
cmd.Parameters.AddWithValue("Sl", cbbsl.Text);
cmd.Parameters.AddWithValue("Gia", cbbgia.Text);
cmd.Parameters.AddWithValue("Tg", datetg.Text);
cmd.ExecuteNonQuery();
あなたはdatetime型にあなたのパラメータを変換する必要がある日時フィールドを持っている場合は.ExecuteNonQuery()
Plsは
あなたのパラに正しいタイプを使用してくださいパラメータインスタンスで型を指定し、正しい型の値を追加します。 [ベストプラクティス - SQL文の実行](http://stackoverflow.com/documentation/.net/3589/ado-net/14261/best-practices-executing-sql-statements)も参照してください。 – Igor
実際には、パラメータの型がDBの列の型と一致するようにしてください。そうするには、まず 'string'値を' DateTime'に解析する必要があります。また、[AddWithValue'を使用しない]ことを検討してください(http://blogs.msmvps.com/jcoehoorn/blog/2014/05/12/can-we-stop-using-addwithvalue-already/) – juharr
渡された値の例を表示できますか'datetg'変数にありますか? – nocodename