web-dev-qa-db-ja.com

SQL Server、Excelの「リンクサーバー」に挿入するときに「無効な列名」エラーが発生しました

「MicrosoftOffice15.0 AccessデータベースエンジンOLE DBプロバイダー」」を使用してデータベースとして使用している単純なExcelスプレッドシートドキュメント(Office 2013を実行)があります。

MS SQL Server Management Studio 2012を使用してこれに接続でき、名前付き範囲「従業員」からデータを選択することもできます。

SELECT *
  FROM [X]...[Employee]
GO

結果:

ID  Name    Description Salary
1   Rob     Cool        1
2   Bob     Awesome     2
3   Robert  DUDE!       3

ここにデータを挿入したいと思います。だから私は書いた:

INSERT INTO [X]...[Employee]
           ([ID]
           ,[Name]
           ,[Description]
           ,[Salary])
     VALUES
           (4
           ,"John"
           ,"Boss"
           ,500)

これは実際にはほとんどSQLServer ManagementStudioによって生成されます。これを実行すると、次のようになります。

Msg 207, Level 16, State 1, Line 8
Invalid column name 'John'.
Msg 207, Level 16, State 1, Line 9
Invalid column name 'Boss'.

私が悪いことをしているという考えはありますか?

12
Emmanuel

一重引用符の代わりに二重引用符を使用しています。 IE:

INSERT INTO [X]...[Employee]
       ([ID]
       ,[Name]
       ,[Description]
       ,[Salary])
 VALUES
       (4
       ,'John'
       ,'Boss'
       ,500)
27
rory.ap