|
mssql数据库编码为gbk
折腾了两天,几乎把能google到的答案试了一遍,求助攻
乱码如下:
rp_sysid name data_type caption logic_name default_value sort_no
0 1001 bt 11 ¿ªÊ¼Ê±¼ä bt 2010-9-9 None
1 1001 et 11 ½áÊøʱ¼ä et 2019-9-9 None
2 1002 bt 11 ¿ªÊ¼Ê±¼ä£º bt 2010-9-9 None
3 1002 et 11 ½áÊøʱ¼ä£º et 2019-9-9 None
4 1003 bt 11 ¿ªÊ¼ÈÕÆÚ bt 2010-9-9 None
5 1003 et 11 ½áÊøÈÕÆÚ et 2019-9-9 None
warn_sysid warn_type warn_info span_time
0 fhr_disconnected Ì¥ÐÄÂʱ¨¾¯ ̽ͷÍÑÂä(Ì¥ÐÄÒ») 0
1 machine_disconnected ×Ó»ú±¨¾¯ ×Ó»ú¶ÏÏß 0
2 fhr_disconnected Ì¥ÐÄÂʱ¨¾¯ ̽ͷÍÑÂä(Ì¥ÐÄÒ») 0
3 machine_disconnected ×Ó»ú±¨¾¯ ×Ó»ú¶ÏÏß 0
4 fhr_disconnected Ì¥ÐÄÂʱ¨¾¯ ̽ͷÍÑÂä(Ì¥ÐÄÒ») 0
5 fhr_disconnected Ì¥ÐÄÂʱ¨¾¯ ̽ͷÍÑÂä(Ì¥ÐÄÒ») 0
6 fhr_disconnected Ì¥ÐÄÂʱ¨¾¯ ̽ͷÍÑÂä(Ì¥ÐĶþ) 0
7 machine_disconnected ×Ó»ú±¨¾¯ ×Ó»ú¶ÏÏß 0
8 fhr_disconnected Ì¥ÐÄÂʱ¨¾¯ ̽ͷÍÑÂä(Ì¥ÐÄÒ») 0
9 fhr_disconnected Ì¥ÐÄÂʱ¨¾¯ ̽ͷÍÑÂä(Ì¥ÐĶþ) 0
10 fhr_disconnected Ì¥ÐÄÂʱ¨¾¯ ̽ͷÍÑÂä(Ì¥ÐÄÈý) 0
11 machine_disconnected ×Ó»ú±¨¾¯ ×Ó»ú¶ÏÏß 0
12 fhr_disconnected Ì¥ÐÄÂʱ¨¾¯ ̽ͷÍÑÂä(Ì¥ÐÄÒ») 0
13 fhr_disconnected Ì¥ÐÄÂʱ¨¾¯ ̽ͷÍÑÂä(Ì¥ÐĶþ) 0
14 fhr_disconnected Ì¥ÐÄÂʱ¨¾¯ ̽ͷÍÑÂä(Ì¥ÐÄÈý) 0
15 machine_disconnected ×Ó»ú±¨¾¯ ×Ó»ú¶ÏÏß 0
16 fhr_disconnected Ì¥ÐÄÂʱ¨¾¯ ̽ͷÍÑÂä(Ì¥ÐĶþ) 0
17 machine_disconnected ×Ó»ú±¨¾¯ ×Ó»ú¶ÏÏß 0
18 fhr_disconnected Ì¥ÐÄÂʱ¨¾¯ ̽ͷÍÑÂä(Ì¥ÐÄÒ») 0
19 fhr_disconnected Ì¥ÐÄÂʱ¨¾¯ ̽ͷÍÑÂä(Ì¥ÐĶþ) 0
20 machine_disconnected ×Ó»ú±¨¾¯ ×Ó»ú¶ÏÏß 0
21 fhr_disconnected Ì¥ÐÄÂʱ¨¾¯ ̽ͷÍÑÂä(Ì¥ÐÄÒ») 0
22 fhr_disconnected Ì¥ÐÄÂʱ¨¾¯ ̽ͷÍÑÂä(Ì¥ÐĶþ) 0
23 machine_disconnected ×Ó»ú±¨¾¯ ×Ó»ú¶ÏÏß 0
代码:
# 创建连接,连接的是SQLServer数据库
# '数据库类型+数据库驱动名称://用户名:密码@机器地址:端口号/数据库名'
# engine = create_engine('mssql+pyodbc://' + ServerName + '/' + Database)
# engine = create_engine("postgresql://scott:tiger@localhost/test")
engine = create_engine('mssql+pymssql://@localhost/SRDB')
conn_SQLServer = engine.connect()
metadata = MetaData(conn_SQLServer)
table_names = engine.table_names()
def export_table(table_name):
# 查询表
tbl = Table(table_name, metadata, autoload=True, schema="dbo")
# select所有
sql = tbl.select()
# 执行sql
result = conn_SQLServer.execute(sql)
# 保存到dataFrame
df = pd.DataFrame(data=list(result), columns=result.keys())
# 解决python原始输出时乱码
# 打印当前表的字段和内容
print(df) |
|