pycharm访问mysql数据库的方法步骤

yipeiwu_com6年前Python基础

不需要像eclipse那样添加驱动包,在pycharm里面下载一个pymysql包即可。

然后链接自己电脑的mysql并进行访问即可。

源码如下

import pymysql

 

# 建立数据库连接

conn = pymysql.Connect(

  host='localhost',

  port=3306,

  user='用户',

  passwd='密码',

  db='数据库',

  charset='utf8'

)

 

# 获取游标

cursor = conn.cursor()

# print(conn)

# print(cursor)

 

# 1、从数据库中查询

# sql="INSERT INTO userinfor(user_name,pass_word)"

sql = "SELECT * FROM userinfor"

# cursor执行sql语句

cursor.execute(sql)

# 打印执行结果的条数

print(cursor.rowcount)

 

# 使用fetch方法进行遍历结果 总共有三条数据

 

# rs=cursor.fetchone()#将第一条结果放入rs中

# re=cursor.fetchmany(3)#将多个结果放入re中

rr = cursor.fetchall() # 将所有的结果放入rr中

# 对结果进行处理

for row in rr:

  print("ID是:=%s, 姓名是:=%s, 密码是:=%s" % row)

# print(re)#输出两条数据,因为fetch()方法是建立在上一次fetch()方法基础上的

 

 

# 2数据库中插入数据

sql_insert = "INSERT INTO userinfor(username,password) values('中兴','123')"

# 执行语句

cursor.execute(sql_insert)

# 事务提交,否则数据库得不到更新

conn.commit()

print(cursor.rowcount)

 

# 修改数据库中的内容

sql_update = "UPDATE userinfor SET username='121' WHERE id=21"

cursor.execute(sql_update)

conn.commit()

 

# 删除数据库中的内容,并利用try catch语句进行事务回滚

try:

  sql_delete = "DELETE FROM userinfor WHERE id=6"

  cursor.execute(sql_delete)

  conn.commit()

except Exception as e:

  print(e)

  # 事务回滚,即出现错误后,不会继续执行,而是回到程序未执行的状态,原先执行的也不算了

  conn.rollback()

 

# 数据库连接和游标的关闭

conn.close()

cursor.close()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Django URL传递参数的方法总结

1 无参数情况 配置URL及其视图如下: (r'^hello/$', hello) def hello(request): return HttpResponse("Hell...

50行Python代码实现视频中物体颜色识别和跟踪(必须以红色为例)

50行Python代码实现视频中物体颜色识别和跟踪(必须以红色为例)

目前计算机视觉(CV)与自然语言处理(NLP)及语音识别并列为人工智能三大热点方向,而计算机视觉中的对象检测(objectdetection)应用非常广泛,比如自动驾驶、视频监控、工业质...

Python中使用中文的方法

先来看看python的版本: >>> import sys >>> sys.version '2.5.1 (r251:54863, Apr...

用Django写天气预报查询网站

用Django写天气预报查询网站

创建项目 创建工程项目如下所示: 设置文件settings.py中的设置主要有两个 1.注册app 2.设置templates的路径 前面的文章已经介绍过多次如何设置了,此处不再做详...

python 对字典按照value进行排序的方法

字典按照value进行排序共有三种方法 d = {'a': 1, 'b': 4, 'c': 2, 'f' : 12} # 第一种方法,key使用lambda匿名函数取value进...