尝试将 Pandas df 加载到 SQL 服务器数据库中已创建的表中我能够连接并创建一个新表,但无法加载 df

问题描述

尝试将 Pandas df 加载到 sql 服务器数据库中已创建的表中。我能够连接并创建一个新表,但无法加载 df 我的代码在这里

{{1}}

这是我得到的错误: ProgrammingError: (pyodbc.ProgrammingError) ('42000',"[42000] [Microsoft][ODBC Driver 17 for sql Server][sql Server]String 或二进制数据将在表 'representation_v1.dbo.RepresentationTable1',列 ' 中被截断Country'。截断的值:'\xa0'。(2628) (sqlExecDirectW); [42000] [Microsoft][ODBC Driver 17 for sql Server][sql Server]语句已终止。(3621)") [sql: INSERT INTO [RepresentationTable1] ([Country],[countryCode],[Population],[LHR],[UHR],[CPRLH],[CPRUH],[Groups]) VALUES (?,?,?)]......

enter image description here

解决方法

显示“...列'国家'。截断值:'\xa0'。(2628)...”的错误消息表明没有。我的“国家/地区”列数据中的字符数太多了。我在国家/地区列中设置的字符数有被截断的风险,因此出现错误。 删除表并重新创建它并在列中允许更多字符 (Varchar (128)) 解决了该问题。