to_sql()错误:TypeError:需要字节,找到str



我正试图将一个df从pythhon上传到sql server

步骤:

  1. 从excel(xlsx(导入的文件-确定
  2. sqlalchemy引擎-正常

错误:系统错误:<类"pyodbc.ProgramingError">返回了一个包含错误集的结果。预期字节,找到str

from sqlalchemy import create_engine 
import urllib
import pandas as pd
df.to_sql('table_name', con=engine, if_exists='replace', index=False)

df.info()给出:

col1              5490 non-null int64
col2              5414 non-null object
col3              5490 non-null object
col4              5490 non-null object
col5              3921 non-null object
col6              5490 non-null object
col7              5490 non-null int64
col8              5490 non-null object
col9              5490 non-null object
col10             5490 non-null object

在sql表中,列类型为[int][varchar](max)

错误追溯TypeError:需要字节,str找到

我的任务是更改df对象的编码,如下所示:

for name, values in df.iteritems():
if df[name].dtype == 'object':
print(name)
print(df[name].dtype)
df[name] = df[name].str.encode('utf-8')
#print(chardet.detect(df[name][0])['encoding'])
return df

在编码到utf-8之后,上传到sql服务器是成功的

相关内容

  • 没有找到相关文章

最新更新