如何使用字段名称中的句点创建到SQL Server视图的Jet ODBC链接?
-
03-07-2019 - |
题
我需要创建一个从Access 2003(Jet)数据库到SQL Server托管视图的ODBC链接,该视图包含包含以下句点的别名字段名称:
Seq.Group
在视图后面的SQL源中,字段名称包含在方括号中......
SELECT Table._Group AS [Seq.Group]
...所以SQL Server不会抱怨创建视图,但是当我尝试从Jet DB创建ODBC链接时(通过编程方式或通过Access 2003 UI),我收到错误消息:
'Seq.Group'不是有效名称。使 确定它不包含无效 字符或标点符号 不会太长。
不幸的是,我无法修改视图的结构,因为它是另一个产品的一部分,所以我坚持使用它们的字段名称。我可以使用无标点字段名称添加我自己的视图,但我真的不想修改SQL Server,因为那时每次有升级,修补程序等时它都会成为另一个维护点有没有人知道更好的解决方法?
解决方案
虽然我在技术上没有最终逃脱点,你的建议实际上确实让我意识到另一种选择。虽然想知道我将如何“通过”转义码为“SQL”服务器,我明白了:为什么不使用“SQL传递查询”?而不是ODBC链接表?由于我只需要对SQL Server数据的读访问权限,因此工作正常!谢谢!
其他提示
在这里猜测:你是否尝试逃避点?像“[Seq \ .Group]”?
这样的东西另一个建议是在sql server上添加一个新视图,而不是修改现有视图。即使您的初始视图是“解决方案”的一部分,也没有任何内容禁止您添加新视图:
SELECT Table._Group AS [Seq_Group]
不隶属于 StackOverflow