MySQLdb操作MYSQL数据库

本文介绍了在Python3环境下如何通过MySQLdb安装包连接并操作MySQL数据库,包括下载相应版本的安装包,执行安装命令,以及验证安装成功的方法。还详细讲解了数据库连接和数据插入的操作步骤,强调了数据修改插入时必须调用commit()来提交到数据库。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MySQLdb安装

如果是python 2.x版本的,在命令行输入执行:pip install MySQLdb即可安装成功
如果是python 3.x版本的,直接用pip install MySQLdb无法安装,接下来解答安装过程。

python3.X安装过程

网页下载安装包:https://pypi.org/project/mysqlclient/#files
在这里插入图片描述
我是python3.7.1的版本,所以选择网页中:mysqlclient-1.3.14-cp37-cp37m-win_amd64 .whl,带有37字样的包。
从cmd命令行中进入下载文件夹,执行下面命令

pip install mysqlclient-1.3.14-cp37-cp37m-win_amd64.whl

验证安装是否成功,执行以下命令

python
import MySQLdb

MySQLdb操作的MYSQL数据库

连接数据库

import MySQLdb
 
try:
    conn=MySQLdb.connect(host='localhost',user='root',passwd='root',db='test',port=3306)
    cur=conn.cursor()
    cur.execute('select * from user')
    cur.close()
    conn.close()
except MySQLdb.Error,e:
     print "Mysql Error %d: %s" % (e.args[0], e.args[1])

数据修改插入操作一定要有数据commit()操作,否则则不能提交数据库中去

import MySQLdb
 
try:
    conn=MySQLdb.connect(host='localhost',user='root',passwd='root',port=3306,charset='utf8')
    /*此处的字符集要与数据库一致*/
    cur=conn.cursor()
     
    cur.execute('create database if not exists python')
    conn.select_db('python')
    cur.execute('create table test(id int,info varchar(20))')
     
    value=[1,'hi rollen']
    cur.execute('insert into test values(%s,%s)',value)
     
    values=[]
    for i in range(20):
        values.append((i,'hi rollen'+str(i)))
         
    cur.executemany('insert into test values(%s,%s)',values)
 
    cur.execute('update test set info="I am rollen" where id=3')
 
    conn.commit()
    cur.close()
    conn.close()
 
except MySQLdb.Error,e:
     print "Mysql Error %d: %s" % (e.args[0], e.args[1])

多行插入

import MySQLdb
 
try:
    conn=MySQLdb.connect(host='localhost',user='root',passwd='root',port=3306)
    cur=conn.cursor()
     
    conn.select_db('python')
 
    count=cur.execute('select * from test')
    print 'there has %s rows record' % count
 
    result=cur.fetchone()
    print result
    print 'ID: %s info %s' % result
 
    results=cur.fetchmany(5)
    for r in results:
        print r
 
    print '=='*10
    cur.scroll(0,mode='absolute')
 
    results=cur.fetchall()
    for r in results:
        print r[1]
     
 
    conn.commit()
    cur.close()
    conn.close()
 
except MySQLdb.Error,e:
     print "Mysql Error %d: %s" % (e.args[0], e.args[1])
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值