2011-11-19 69 views
-1

我想从日期和目前使用的砑光控制两个文本框,然后试图插入表中的这个值。我该如何处理? 请帮助..插入日期到表

string comstr = "insert into ATM_DETAILS_TB values(" + txtpin.Text + ",'" + Convert.ToDateTime(txtvldfrm.Text) + "','" + Convert.ToDateTime(txtvldto.Text) + "'," + Convert.ToInt32(ddlaccno.SelectedValue) + ",'" + Session["strUid"].ToString() + "')"; 

而使用这个代码它显示提示错误“字符串未被识别为有效的DateTime”

我该怎么办?

回答

0

您从参数化查询使用这样的:

string comstr = "insert into ATM_DETAILS_TB values(@pin,@vldfrm,@vldto,@ddlaccno,@strUid)"; 

    YourCommand.Parametter.AddWithValue("@vldto",Convert.ToDateTime(txtvldto.Text)); 
    YourCommand.Parametter.AddWithValue("@strUid",Session["strUid"].ToString()); 
    ....Define the Other Paraametter 

编辑----
检查这个问题String was not rec...

+1

这对他看到的错误没有帮助,但我同意100%他应该使用参数化查询。 – David

+0

嗨mtaboy,感谢您的帮助。我试图以同样的方式ü告诉me.But它显示了同样的错误,如 “”字符串未被识别为有效的DateTime“请帮帮忙。 – raji

+0

喜的Raji。你是什么日期栏输入你的表? –

1

始终使用DateTime.TryParseTryParseExact方法来解析日期。

DateTime vldDate; 
bool isValid=false; 
if(DateTime.TryParse(txtvldfrm.Text,out vldDate)) 
{ 
    isValid=true; 
} 
.... 
if(isValid) 
{ 
    command.Parametter.Add("@vldto",SqlDbType.DateTime).Value=vldDate; 
    command.Parametter.Add("@strUid",SqlDbType.VarChar,30).Value=Session["strUid"]; 
    ..... 
} 
+0

AVD您好,感谢乌拉圭回合的答复。如何添加参数会话[“strUid”]。的ToString()链接()?请帮助 – raji

+0

@raji - 我编辑了这篇文章。 – adatapost