我在使用 pandas to_sql 将数据输入到我的 SQL SERVER 数据库时遇到以下错误:
错误:
(pymssql.ProgrammingError) (102, b"'('.DB-Lib 错误消息 20018,严重性 15:\n一般 SQL Server 错误:检查来自 SQL Server 的消息\n")
代码:
connection = sqlalchemy.create_engine('mssql+pymssql://' + self.username + ":" + self.password + "@" +self.Server + "/" + self.Database, echo=False, isolation_level="AUTOCOMMIT" )
chunks = pandas.read_csv(self.input_file, chunksize=100000)
for chunk in chunks:
chunk.to_sql(table_name, if_exists='append', con=connection, index=False)
表结构:
CREATE TABLE [table_name] (
[index] varchar(200) NOT NULL,
[ColumnA (unit)] varchar(255),
[ColumnB] float,
CONSTRAINT PK_table_name PRIMARY KEY NONCLUSTERED ([index])
)
注意: 我觉得错误是因为列名中的“(”。但我无法从数据库中的列名中删除它。
欢迎任何其他答案/建议。提前谢谢。