Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在数据库中插入日期_C#_Asp.net_Sql Server_Datetime_Insert - Fatal编程技术网

C# 在数据库中插入日期

C# 在数据库中插入日期,c#,asp.net,sql-server,datetime,insert,C#,Asp.net,Sql Server,Datetime,Insert,datofreg的类型为datetime 我的命令是 SqlCommand cmd = new SqlCommand("insert into stud(datofreg) values('"+DateTime.Now+"'",conn); 当我在“1/6/2014 12:45:17 AM”附近执行时,它会显示不正确的语法。您的问题是,在查询结束时您丢失了,但不要使用这种方式 "insert into stud(datofreg) values('" + DateTime.Now + "')"

datofreg的类型为datetime

我的命令是

SqlCommand cmd = new SqlCommand("insert into stud(datofreg) values('"+DateTime.Now+"'",conn);

当我在“1/6/2014 12:45:17 AM”附近执行时,它会显示不正确的语法。

您的问题是,在查询结束时您丢失了,但不要使用这种方式

"insert into stud(datofreg) values('" + DateTime.Now + "')"
                                                        ^^here
你应该经常使用。这种类型的字符串连接对攻击是开放的

比如,

SqlCommand cmd = new SqlCommand("insert into stud(datofreg) values(@date)", conn);
cmd.Parameters.AddWithValue("@date", DateTime.Now);
cmd.ExecuteNonQuery();

您的问题是在查询结束时找不到您,但请不要使用这种方式

"insert into stud(datofreg) values('" + DateTime.Now + "')"
                                                        ^^here
你应该经常使用。这种类型的字符串连接对攻击是开放的

比如,

SqlCommand cmd = new SqlCommand("insert into stud(datofreg) values(@date)", conn);
cmd.Parameters.AddWithValue("@date", DateTime.Now);
cmd.ExecuteNonQuery();

+1用于参数化查询!这是唯一可行的办法。@marc_正是!除了防止SQL注入外,还可以提高可读性,特别是当SQL查询有很多参数时。参数化查询+1!这是唯一可行的办法。@marc_正是!除了防止SQL注入之外,如果SQL查询有很多参数,还特别增加了可读性。