前女友我cnm 发表于 2020-5-26 19:35:04

python数据库查询操作失败

本帖最后由 前女友我cnm 于 2020-5-26 19:36 编辑

import pymssql
# 打开数据库连接 这里的host='.'也可用本机ip或ip+端口号(sqlserver默认端口号:1433)
conn = pymssql.connect(host="192.168.1.3",user= "sa",password= "wyc1997827", database="stu", charset='GBK',autocommit = True )
# 使用cursor()方法获取操作游标
cursor = conn.cursor()
print('连接成功')
# SQL 查询语句
sqll = "SELECT * FROM sturesume"

sql = "SELECT * FROM sturesume WHERE 教育背景 LIKE '%本科'"

   # 执行SQL语句
cursor.execute(sql)
print('成功尝试')
   # 获取所有记录列表
   
results = cursor.fetchall()
   
print(results)
   
   

# 关闭数据库连接
cursor.close()
conn.close()


数据库使用的是sqlserver,数据库编码方式是GBK,在python代码中我也将编码方式设为GBK,在查询数据表所有数据时正常输出,但在查询表中特定字段时出现如图所示的错误,求大神帮忙解惑!

前女友我cnm 发表于 2020-5-26 19:36:02

ProgrammingError: (102, b"Incorrect syntax near '\xbd'.DB-Lib error message 20018, severity 15:\nGeneral SQL Server error: Check messages from the SQL Server\n")

图忘记传了,这个是错误,各位大神帮忙看看,感谢

前女友我cnm 发表于 2020-5-26 19:38:31

在网上看到一篇文章说可能是数据表编码不一致的原因,那请问sqlserver2019如何更改数据表编码呢?

Twilight6 发表于 2020-5-26 19:46:57

鱼币!

青出于蓝 发表于 2020-5-26 19:56:34

鱼币

青出于蓝 发表于 2020-5-26 19:57:07

{:10_244:}

heidern0612 发表于 2020-5-26 20:05:56

前女友我cnm 发表于 2020-5-26 19:36
ProgrammingError: (102, b"Incorrect syntax near '\xbd'.DB-Lib error message 20018, severity 15:\nGen ...

看着好像是二进制解码错误,试试decoding成gbk呢?

前女友我cnm 发表于 2020-5-26 22:33:50

heidern0612 发表于 2020-5-26 20:05
看着好像是二进制解码错误,试试decoding成gbk呢?

谢了老哥,重新弄了个表,把表编码改成utf8,字段属性改成nvarchar就好了

赚小钱 发表于 2020-5-26 22:51:44

本帖最后由 赚小钱 于 2020-5-26 22:53 编辑

没用过 mssql,或许可以尝试使用 mysql

zwhe 发表于 2020-5-27 10:11:57

{:7_118:}
页: [1]
查看完整版本: python数据库查询操作失败