【发布时间】:2012-03-02 16:06:20
【问题描述】:
请帮我将日期从 dd-mm-yyyy 格式的文本框中插入到 sql server。 我的代码如下:-
int prio = Convert.ToInt32(Priority.Text);
string stdate = planstart.Text;
string endate= planend.Text;
string actst = actualstart.Text;
string acten = actualend.Text;
SqlConnection myconnection = new SqlConnection(constring);
SqlCommand mycommand = new SqlCommand();
DataSet mydataset = new DataSet();
SqlDataAdapter mydataadapter = new SqlDataAdapter();
myconnection.Open();
mycommand.Connection = myconnection;
mycommand.CommandText = " insert into project_status.dbo.Project_Status_Report values('" + projectcode.Text + "','" + projectname.Text + "',(select P_Code from project_status.dbo.Project_Type where Project_Type = '" + projecttype.Text + "')," + prio + ",'" + stdate + "','" + endate + "','" + actst + "','" + acten + "','" + currentstatus.Text + "','" + remark.Text + "','no');";
mycommand.CommandType = CommandType.Text;
mycommand.ExecuteNonQuery();
它抛出一个异常说:- 从字符串转换日期和/或时间时转换失败。
【问题讨论】:
-
1) 查看参数化查询以保护自己免受 SQL 注入。 2)如果您的日期应该是日期,请不要将其视为字符串。验证它是一个有效的日期,对其进行转换,然后将其作为查询中的参数提供。
-
你能告诉我如何转换它吗?因为我尝试过但未能转换。
-
如果它比接受答案更有效......