我试图从表中选择一个名为"YEAR"的列.
我可以使用以下方法实现此目的:
SELECT * FROM OPENQUERY (mybook, 'SELECT mytable.year FROM mytable')
Run Code Online (Sandbox Code Playgroud)
但是当我使用它时不是:
SELECT * FROM OPENQUERY (mybook, 'SELECT year FROM mytable')
Run Code Online (Sandbox Code Playgroud)
这是因为"年"是某种保留字还是有其他原因?
在SQL Server中,Year是一个保留字.所以当你尝试使用它时它会抱怨.
如果您使用的是MySql,则可以使用年份后面的刻度(`).
在SQL Server中,你可以使用[]"s左右year,[year].
编辑
看到更新后的问题后,以下SQL应该可以正常工作:
SELECT * FROM OPENQUERY (mybook, 'SELECT [year] FROM mytable')