关于python包报错mysql的信息

本文目录一览:

Python连接mysql数据库报错

Python连接mysql数据库报错

这里的意思是:数据库连不上啊。

可能是网络问题,可能是防火墙问题,可能是3306端口没开。你先排除这些问题吧。用一些mysql工具连接测试看,比如SQLyog 测试。

安装MySQL-python,报错。

因为你没有正确安装vc的编译器,也没有使用vcvars这个批处理进行环境变量设置。

你可以安装VC后,运行它的VCVARS命令后再执行安装。

不过建议你别从源代码安装mysql-python,直接找个别人做好的安装包。因为这里可能还需要引用mysql.h这样的文件进行编译,复杂度可能是你承受不了的。

Python2.7安装mysql-python报错,求教

# script to register python 2.0 or later for use with win32all

# and other extensions that require Python registry settings

#

# written by Joakim Loew for Secret Labs AB / PythonWare

#

# source:

#

#

# modified by Valentine Gogichashvili as described in

import sys

from _winreg import *

# tweak as necessary

version = sys.version[:3]

installpath = sys.prefix

regpath = “SOFTWARE\\Python\\Pythoncore\\%s\\” % (version)

installkey = “InstallPath”

pythonkey = “PythonPath”

pythonpath = “%s;%s\\Lib\\;%s\\DLLs\\” % (

installpath, installpath, installpath

)

def RegisterPy():

try:

reg = OpenKey(HKEY_CURRENT_USER, regpath)

except EnvironmentError as e:

try:

reg = CreateKey(HKEY_CURRENT_USER, regpath)

SetValue(reg, installkey, REG_SZ, installpath)

SetValue(reg, pythonkey, REG_SZ, pythonpath)

CloseKey(reg)

except:

print “*** Unable to register!”

return

print “— Python”, version, “is now registered!”

return

if (QueryValue(reg, installkey) == installpath and

QueryValue(reg, pythonkey) == pythonpath):

CloseKey(reg)

print “=== Python”, version, “is already registered!”

return

CloseKey(reg)

print “*** Unable to register!”

print “*** You probably have another Python installation!”

if __name__ == “__main__”:

RegisterPy()

python3.6执行pymysql报错

折腾好半天的数据库连接,由于之前未安装 pip ,而且自己用的Python 版本为3.6. 只能用 pymysql 来连接数据库,下边 简单介绍一下 连接的过程,以及简单的增删改查操作。

1.通过 pip 安装 pymysql

进入 cmd 输入 pip install pymysql

回车等待安装完成;

安装完成后出现如图相关信息,表示安装成功。

2.测试连接

import pymysql #导入 pymysql ,如果编译未出错,即表示 pymysql 安装成功

简单的增删改查操作

示例表结构

2.1查询操作

[python] view plain copy

import pymysql #导入 pymysql

#打开数据库连接

db= pymysql.connect(host=”localhost”,user=”root”,

password=”123456″,db=”test”,port=3307)

# 使用cursor()方法获取操作游标

cur = db.cursor()

#1.查询操作

# 编写sql 查询语句 user 对应我的表名

sql = “select * from user”

try:

cur.execute(sql) #执行sql语句

results = cur.fetchall() #获取查询的所有记录

print(“id”,”name”,”password”)

#遍历结果

for row in results :

id = row[0]

name = row[1]

password = row[2]

print(id,name,password)

except Exception as e:

raise e

finally:

db.close() #关闭连接

2.2插入操作

[python] view plain copy

import pymysql

#2.插入操作

db= pymysql.connect(host=”localhost”,user=”root”,

password=”123456″,db=”test”,port=3307)

# 使用cursor()方法获取操作游标

cur = db.cursor()

sql_insert =”””insert into user(id,username,password) values(4,’liu’,’1234′)”””

try:

cur.execute(sql_insert)

#提交

db.commit()

except Exception as e:

#错误回滚

db.rollback()

finally:

db.close()

2.3更新操作

[python] view plain copy

import pymysql

#3.更新操作

db= pymysql.connect(host=”localhost”,user=”root”,

password=”123456″,db=”test”,port=3307)

# 使用cursor()方法获取操作游标

cur = db.cursor()

sql_update =”update user set username = ‘%s’ where id = %d”

try:

cur.execute(sql_update % (“xiongda”,3)) #像sql语句传递参数

#提交

db.commit()

except Exception as e:

#错误回滚

db.rollback()

finally:

db.close()

2.4删除操作

[python] view plain copy

import pymysql

#4.删除操作

db= pymysql.connect(host=”localhost”,user=”root”,

password=”123456″,db=”test”,port=3307)

# 使用cursor()方法获取操作游标

cur = db.cursor()

sql_delete =”delete from user where id = %d”

try:

cur.execute(sql_delete % (3)) #像sql语句传递参数

#提交

db.commit()

except Exception as e:

#错误回滚

db.rollback()

finally:

db.close()

python 连接mysql数据库报错

编辑mysql配置文件my.ini(在MySQLServer的安装目录),在[mysqld]这个条目下加入 skip-grant-tables

保存退出后重启mysql

1.点击“开始”-“运行”(快捷键Win+R)。

2.启动:输入 net stop mysql

3.停止:输入 net start mysql

这时候在cmd里面输入mysql -u root -p就可以不用密码登录了,出现password:的时候直接回车可以进入,不会出现ERROR 1045 (28000),但很多操作都会受限制,因为我们不能grant(没有权限)。按下面的流程走(红色部分为输入部分,绿色的是执行后显示的代码不用输入):

1.进入mysql数据库:

mysql use mysql; Database changed

2.给root用户设置新密码,蓝色部分自己输入: mysql update user set password=password(“新密码”) where user=”root”; Query OK, 1 rows affected (0.01 sec) Rows matched: 1 Changed: 1 Warnings: 0

3.刷新数据库 mysql flush privileges; Query OK, 0 rows affected (0.00 sec)

4.退出mysql: mysql quit Bye

改好之后,再修改一下my.ini这个文件,把我们刚才加入的”skip-grant-tables”这行删除,保存退出再重启mysql就可以了。

总结:猜测根本原因就是简单的密码输入错误,通过以上方法我们可以不验证密码来连接上mysql,然后设置新密码。

原创文章,作者:BRJB,如若转载,请注明出处:https://www.506064.com/n/148241.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
BRJBBRJB
上一篇 2024-11-03 15:15
下一篇 2024-11-03 15:15

相关推荐

  • 如何查看Anaconda中Python路径

    对Anaconda中Python路径即conda环境的查看进行详细的阐述。 一、使用命令行查看 1、在Windows系统中,可以使用命令提示符(cmd)或者Anaconda Pro…

    编程 2025-04-29
  • java client.getacsresponse 编译报错解决方法

    java client.getacsresponse 编译报错是Java编程过程中常见的错误,常见的原因是代码的语法错误、类库依赖问题和编译环境的配置问题。下面将从多个方面进行分析…

    编程 2025-04-29
  • Python周杰伦代码用法介绍

    本文将从多个方面对Python周杰伦代码进行详细的阐述。 一、代码介绍 from urllib.request import urlopen from bs4 import Bea…

    编程 2025-04-29
  • Python计算阳历日期对应周几

    本文介绍如何通过Python计算任意阳历日期对应周几。 一、获取日期 获取日期可以通过Python内置的模块datetime实现,示例代码如下: from datetime imp…

    编程 2025-04-29
  • Python中引入上一级目录中函数

    Python中经常需要调用其他文件夹中的模块或函数,其中一个常见的操作是引入上一级目录中的函数。在此,我们将从多个角度详细解释如何在Python中引入上一级目录的函数。 一、加入环…

    编程 2025-04-29
  • 如何修改mysql的端口号

    本文将介绍如何修改mysql的端口号,方便开发者根据实际需求配置对应端口号。 一、为什么需要修改mysql端口号 默认情况下,mysql使用的端口号是3306。在某些情况下,我们需…

    编程 2025-04-29
  • Python列表中负数的个数

    Python列表是一个有序的集合,可以存储多个不同类型的元素。而负数是指小于0的整数。在Python列表中,我们想要找到负数的个数,可以通过以下几个方面进行实现。 一、使用循环遍历…

    编程 2025-04-29
  • 蝴蝶优化算法Python版

    蝴蝶优化算法是一种基于仿生学的优化算法,模仿自然界中的蝴蝶进行搜索。它可以应用于多个领域的优化问题,包括数学优化、工程问题、机器学习等。本文将从多个方面对蝴蝶优化算法Python版…

    编程 2025-04-29
  • Python清华镜像下载

    Python清华镜像是一个高质量的Python开发资源镜像站,提供了Python及其相关的开发工具、框架和文档的下载服务。本文将从以下几个方面对Python清华镜像下载进行详细的阐…

    编程 2025-04-29
  • python强行终止程序快捷键

    本文将从多个方面对python强行终止程序快捷键进行详细阐述,并提供相应代码示例。 一、Ctrl+C快捷键 Ctrl+C快捷键是在终端中经常用来强行终止运行的程序。当你在终端中运行…

    编程 2025-04-29

发表回复

登录后才能评论