微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在pycharm中链接MySql数据库并进行操作

  1. 首先在pycharm中安装pyMysqL包,settings-prject-project interpreter - 添加符号-搜索pyMysqL-install。


       
  2. import pyMysqL
import pyMysqL

conn = pyMysqL.connect(host='127.0.0.1',user='root',passwd='root',db='MysqL_wyc',port=3306,charset='utf8')
# 链接数据库
print("打印数据库链接对象{}".format(conn))
# 获取游标
cur = conn.cursor()

# 创建表
cur.execute("drop table if EXISTS  pyTest")
sql="""create table pyTest (
      id VARCHAR(20) NOT NULL  PRIMARY KEY,
      name VARCHAR(20),
      sex CHAR(2)
    )"""
cur.execute(sql)

#cur.execute(sql) 这个只是执行了你 sql 中的语句,如果对表进行了修改 只执行这一句并没有作用,
#需要在后面加上conn.commit()提交增删改数据到数据库

#添加数据
sql="insert into pyTest(id,name,sex)values('123','张三','男')"
try:
    #执行sql语句
    cur.execute(sql)
    # #提交到数据库执行
    conn.commit()
except:
    #发生错误时回滚
    conn.rollback()

# ----------修改数据-----------------------
#写法1:sql="update pyTest set name='李四' where id='%s'" %('123')
#写法2:
sql = "update pyTest set name='王五' where id='123'"
try:
    cur.execute(sql)
    conn.commit()
except:
    conn.rollback()

#查询操作
sql = "select * from pyTest"
cur.execute(sql)
conn.commit()
#使用 fetchall() 方法获取数据对象,可以得到表中所有的信息,如:(('123', '王五', '男'), ('124', '张三', '男'))
data1 = cur.fetchall()
print("数据对象是{}".format(data1))
print(data1)
for i in data1:
    print(i)
#使用 fetchone() 方法获取一条数据,如:('123', '王五', '男')
# data2 = cur.fetchone()
# #cur.fetchall()与cur.fetchone() 不能同时使用哪怕赋值给不同的变量。
# print(data2)
# for i in data2:
#     print(i)

# 删除表
# sql = " DROP TABLE pytest"

cur.close()
conn.close()


# ----------删除数据-----------------------
# sql="delete from pyTest"
# try:
#     cur.execute(sql)
#     conn.commit()
# except:
#     conn.rollback()

小礼物走一走,来简书关注我



作者:_三余无梦生_
链接:https://www.jianshu.com/p/cbe532b168b2
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐