我正在使用pymssql python库连接到MS SQL数据库来提取数据。
一切正常,直到遇到带有空格的表名。
这是下面的代码可以正常工作
getAllRelationships
虽然此代码不会
get_all_relationships
我尝试过使用“和`来封闭,但我收到的错误始终是
“无效的对象名称'学生信息'.DB-Lib错误消息208, 严重级16:\ n一般SQL Server错误:检查SQL中的消息 服务器\ n“个)
我尝试过多个带空格的表格,并且一直都会出现此错误。
我还从CLI
尝试了以下内容import pymssql
conn = pymssql.connect(
server="11.11.11.11",
port=1433,
user="######",
password="######",
database="######")
cursor = conn.cursor(as_dict=True)
cursor.execute('SELECT * FROM Students')
并且错误已经
来自DAYMAP第1行的消息208(严重级16,状态1):“无效的对象 名称'学生信息'。“
答案 0 :(得分:1)
为了尝试重现此错误,我首先创建了一个表并插入了一些数据:
CREATE TABLE [bad idea] (
[bad idea column] VARCHAR(255)
)
INSERT INTO [bad idea] ([bad idea column]) VALUES ('Spaces in DB entity names are generally a bad idea.')
然后,从tsql,我可以查询它:
1> SELECT * FROM [bad idea]
2> GO
Spaces in DB entity names are generally a bad idea.
您确定您的列名拼写正确吗?您能否共享您正在编辑的确切列名称 - 例如,它们都是ASCII字符吗?您连接到哪个SQL Server版本?祝你好运。