2012-01-01 29 views
2

私は、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は主キーですされています自動インクリメント。しかし、挿入クエリでエラーが発生します。

キーワード 'Transaction'の近くに構文が正しくありません。

よろしく

答えて

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

これは確かにあなたのために働くでしょう...取引はSQL管理のKeyWordです。 私も同じような問題を抱えていました。[]は私がそれから出ていくのを助けました。

あなたのために働いている場合は、投票してください。

8

Transactionreserved wordである私を助けてください。括弧内に入れてください。

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

疑問がある場合は、オブジェクト名を角かっこで囲みます。

10

Transactionは、SQL Serverの予約済みキーワードです。

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

あなたは[]との取引で、あなたのテーブル名を同封する必要があります:あなたはそれを名前ではなく、キーワードであるSQL Serverを伝えるために[]にテーブル名を囲む必要があります。トランザクションは予約語です。

関連する問題