c# - 关键字 'Transaction' 附近的语法不正确

标签 c# sql database sql-server-2008 sql-server-2005

我正在使用 SQL Server Management Studio 2008 并编写以下查询

INSERT INTO Transaction (TransactionType, AccountID, HolderName, Amount, CurrDate) 
VALUES ('Cash Withdrawal', '25', 'abc', '1000', 'abc');

表的脚本是

SELECT TOP 1000 [ID]
      ,[TransactionType]
      ,[AccountID]
      ,[HolderName]
      ,[Amount]
      ,[CurrDate]
  FROM [ATMSoftware].[dbo].[Transaction]

ID是主键,自动递增。但是我在插入查询时遇到错误

Incorrect syntax near the keyword 'Transaction'.

请帮帮我

问候

最佳答案

Transaction是 SQL Server 中的保留关键字。您需要将表名包含在 [] 中以告诉 SQL Server 这是一个名称而不是关键字:

INSERT INTO [Transaction] 
       (TransactionType,AccountID,HolderName,Amount,CurrDate) 
VALUES 
       ('Cash Withdrawal','25','abc','1000','abc');

关于c# - 关键字 'Transaction' 附近的语法不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8692508/

相关文章:

mysql - 我可以在 MySQL tinyInt 上建立索引吗?

mysql - 在 SQL 中使用 COUNT(Distinct)

php - Laravel - 从一个表中获取另一个表中不存在的记录并附加 where 子句

SQL 使用 count 或 sum 获取特定结果

c# - JSON.Net - 仅在序列化时使用 JsonIgnoreAttribute (但在反序列化时不使用)

c# - CLR调试器和 'var'

c# - 我应该使这个 XmlSerializer 静态吗?

mysql - 删除在其他表中没有引用的行;

mysql - 在不存在时插入,但在条件存在时更新

c# - 在 List<T> 类型的对象中,按索引访问对象是遍历列表中的每个项目,还是使用更快的方法?