文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

python操作mysql

2023-01-31 03:11

关注
# rpm -qa |grep MySQL-python 查询是否有mysqldb库
MySQL-python-1.2.3-0.3.c1.1.el6.x86_64


>>> import MySQLdb #导入mysqldb模块
>>> conn = MySQLdb.connect(user='root',passwd='',host='127.0.0.1') #设置连接参数
>>> cur = conn.cursor() #创建游标
>>> conn.select_db('test') #选中数据库test进行连接
>>> cur.execute("insert into t1(id,name,age) value(3,'cc',30)") #发送sql指令,增加一条记录
1L  #显示增加一行记录


mysql> select * from t1;
+------+------+------+
| id   | name | age  |
+------+------+------+
|    1 | aa   | 10   |
|    2 | bb   | 20   |
|    3 | cc   | 30   |


>>> sqli = "insert into t1(id,name,age) value(%s,%s,%s)" #定义插入字符串
>>> cur.execute(sqli,(7,'ll',70)) #执行插入指令的,调插入字符串
1L
>>> cur.executemany(sqli,[(8,'rr',80),(9,'yy',90)]) #插入多行使用many
2L


mysql> select * from t1;
+------+------+------+
| id   | name | age  |
+------+------+------+
|    1 | aa   | 10   |
|    2 | bb   | 20   |
|    3 | cc   | 30   |
|    4 | dd   | 40   |
|    5 | gg   | 50   |
|    6 | ff   | 60   |
|    7 | ll   | 70   |
|    8 | rr   | 80   |
|    9 | yy   | 90   |
+------+------+------+
9 rows in set (0.00 sec)


>>> cur.execute('delete from t1 where id = 4') #删除操作
1L
mysql> select * from t1;
+------+------+------+
| id   | name | age  |
+------+------+------+
|    1 | aa   | 10   |
|    2 | bb   | 20   |
|    3 | cc   | 30   |
|    5 | gg   | 50   |
|    6 | ff   | 60   |
|    7 | ll   | 70   |
|    8 | rr   | 80   |
|    9 | yy   | 90   |
+------+------+------+
8 rows in set (0.00 sec)



>>> cur.execute("update t1 set name = 'uu' where id = 7") #修改操作
1L
mysql> select * from t1;
+------+------+------+
| id   | name | age  |
+------+------+------+
|    1 | aa   | 10   |
|    2 | bb   | 20   |
|    3 | cc   | 30   |
|    5 | gg   | 50   |
|    6 | ff   | 60   |
|    7 | uu   | 70   |
|    8 | rr   | 80   |
|    9 | yy   | 90   |
+------+------+------+
8 rows in set (0.00 sec)


>>> cur.execute('select * from t1') #查询,不能反映出来
8L
>>> cur.fetchone() #显示一行
(1L, 'aa', '10')
>>> cur.fetchmany(7) #显示七行
((2L, 'bb', '20'), (3L, 'cc', '30'), (5L, 'gg', '50'), (6L, 'ff', '60'), (7L, 'uu', '70'), (8L, 'rr', '80'), (9L, 'yy', '90'))
>>> cur.fetchmany(7) #不可以重复取数据
()
>>> cur.scroll(0,'absolute') #光标移动到开头位置
>>> cur.fetchmany(7) #可以继续去数据
((1L, 'aa', '10'), (2L, 'bb', '20'), (3L, 'cc', '30'), (5L, 'gg', '50'), (6L, 'ff', '60'), (7L, 'uu', '70'), (8L, 'rr', '80'))
>>> cur.fetchmany(cur.execute("select * from t1")) #查询表中所有数据条目
((1L, 'aa', '10'), (2L, 'bb', '20'), (3L, 'cc', '30'), (5L, 'gg', '50'), (6L, 'ff', '60'), (7L, 'uu', '70'), (8L, 'rr', '80'), (9L, 'yy', '90'))
>>> cur.close() #关闭游标
>>> conn.close() #关闭数据库


阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯