在使用pandas to_sql时如何逃避'('在SQL SERVER表中的列名?

时间:2018-02-13 12:54:26

标签: python sql-server pandas pandas-to-sql

使用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])
) 

注意: 我觉得错误是由于列名中的'(但是我只能将其从列名中删除在数据库中。

欢迎任何其他答案/建议。 提前谢谢。

0 个答案:

没有答案