c# - 插入日期时间错误

标签 c# sql-server-2008

我在向数据库中插入日期时遇到问题 插入查询:

INSERT INTO users (f_name, s_name, t_name,family_name, age, national_id, 
telephone, mobile,  address, job_name, company_code, start_date, end_date)
VALUES (N'" + fname + "',N'" + sname + "',N'" + tname + "',N'" + famiy_name + 
        "',N'" + age + "',N'" + national_id + "',N'" + telephone + 
        "',N'" + mobile + "',N'" + address + "',N'" + job_name + "',N'" + 
        company_code + "'," + start_date + "," + end_date + ")";

注意条目前的大写字母“N”以便能够插入阿拉伯语单词

错误信息:

Incorrect syntax near '12'.

虽然文本可视化工具的日期格式是

05/11/2010 12:00:00 AM

我使用 VS2010 和 DB sql express 2008

最佳答案

为什么会这样:您似乎忘记了用单引号分隔日期。

你应该做什么:使用parameterized queries相反,您不必担心定界或 SQL 注入(inject)(Otiel 的回答有一个很好的示例)

关于c# - 插入日期时间错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8190083/

相关文章:

c# - 否定 `.Where()` LINQ 表达式

c# - 如何在我的 WinCE 应用程序中集成扫描条码选项?

file - 如何使用 SSIS 包仅遍历目标中不存在的文件?

sql-server - 在 SQL Server 中减去两个时间值

asp.net - 恢复SQL Server 2008数据库后"Invalid object name"

C#猜谜游戏只能猜一次

c# - 使用 MONO 在 LINUX 中开发类似于 Windows 的服务?

c# - 无法将内容从前端应用程序推送到数据库

c# - Entity Framework : Database. ExecuteSqlCommand 方法

c# - 减少数据库往返