2017-07-20 4 views
0

、アプリケーションは私がエラーにSQLDATETIMEオーバーフローエラーが

SQLDATETIMEオーバーフローを取得しています]ボタンをクリックしたときに、その後...実行されます。 1/1/1753の間12:00:00 AMと12/31/9999の11:59:59の間にある必要があります

私はこの問題を解決する方法がわかりません。インターネットは私にとってはうまくいかないようです。これはSQL側にあるのでしょうか?

private void button1_Click(object sender, EventArgs e) 
{ 
    SqlConnection sqlcn1 = new SqlConnection("My Connection String"); 
    sqlcn1.Open(); 

    //Stored Procedure 
    SqlCommand sqlcmddel = new SqlCommand("My_Stored_Procedure", sqlcn1); 
    sqlcmddel.CommandType = CommandType.StoredProcedure; 
    sqlcmddel.ExecuteNonQuery(); 

    sqlcn1 = new SqlConnection("My Connection String"); 
    sqlcn1.Open(); 

    foreach (DataGridViewRow row in dataGridView1.Rows) 
    { 
     SqlCommand sqlcmdins = new SqlCommand("My_Stored_Procedure", sqlcn1); 

     sqlcmdins.CommandType = CommandType.StoredProcedure; 

     //Stored Procedure 
     sqlcmdins.Parameters.Add("@sugnum", SqlDbType.Int).Value = Convert.ToInt64 (row.Cells[0].Value); 
     sqlcmdins.Parameters.Add("@sugtype", SqlDbType.NVarChar, 50).Value = Convert.ToString(row.Cells[1].Value); 
     sqlcmdins.Parameters.Add("@buyerid", SqlDbType.NVarChar, 50).Value = Convert.ToString (row.Cells[2].Value); 
     sqlcmdins.Parameters.Add("@duedate", SqlDbType.DateTime).Value = Convert.ToDateTime (row.Cells[3].Value); 
     sqlcmdins.Parameters.Add("@xrelqty", SqlDbType.Float).Value = Convert.ToDouble (row.Cells[4].Value); 
     sqlcmdins.Parameters.Add("@purchasingfactor", SqlDbType.Float).Value = Convert.ToDouble (row.Cells[5].Value); 
    } 
} 
+0

sqlに入力しようとしているDateTime値は何ですか? – Sudsy1002

+0

私はSQLテーブルにある値を取得しようとしています – hrutk1ta

+0

'row.Cells [3] .Value'には、それが含まれていると思われるものは含まれていないと思います! –

答えて

0

SQL側でDATETIME2する変更データの種類(その短い答えのために申し訳ありませんが、コメントすることはできません)

+0

これを試してみてください....「以前に述べたように、datetime2データ型からdatetimeデータ型への変換は範囲外の値になりました:/ – hrutk1ta

+0

@ hrutk1ta、私は列の値があなたが期待するものは、デバッグを試み、値の型と値が何であるか調べる –

0

ではなく、文字列値を渡すようにしてください、パラメータが正しいデータ型の例qlcmdins.Parameters.Add("@duedate", row.Cells[3].Value.ToString())を把握します

+0

"NullReferenceExceptionが未処理"でした。 "オブジェクト参照がオブジェクトのインスタンスに設定されていません" :( – hrutk1ta

関連する問題