python链接mysql(hive)

一、链接步骤

①导入mysql依赖

 1 import mysql.connector 

②进行mysql的链接(mysql_connMySQL 连接对象,它表示与 MySQL 数据库建立的连接。)

1 mysql_conn = mysql.connector.connect(
2         host='localhost',   //设置host
3         user='root',        //设置用户名
4         password='********',  //密码
5         database='city'     //设置数据库名
6     )

 1 mysql_cursor = mysql_conn.cursor()   //使用cursor()

cursor的作用:cursor 是数据库连接对象(例如 MySQL 或 Hive)提供的一个接口,它用于执行 SQL 查询并处理查询结果。通过 cursor,你可以与数据库进行交互,执行 SQL 语句,获取查询结果,提交事务等操作

③编写sql语句,实现对数据库的操作(增删改查)

1 # 插入数据
2 insert_query = """
3 INSERT INTO first (`type`, `id`, total_traffic)
4 VALUES (%s, %s, %s)
5 """

④执行sql语句

(1)执行多条语句(例子:一次性新增多条数据)

 1 mysql_cursor.executemany(insert_query, data)     里面的data的样式类似于

data=[('video', '10506', 3145836), ('video', '5609', 1048643), ('video', '8175', 1048630), ('video', '11724', 1048576), ('video', '9478', 1048576), ('video', '11938', 1048576), ('video', '13109', 1048576), ('video', '2030', 552862), ('video', '7557', 524396), ('video', '13181', 524288)]
是一个数值组
(2)执行单条语句
 1 mysql_cursor.execute(insert_query)    执行单条的sql语句(类似于创建某一个表,删除某一条数据)

⑤对事务进行提交(必须进行事务的提交,否则数据不会改变)

 1 mysql_conn.commit() # 确保提交事务    (mysql_conn是上面进行mysql的链接时定义的链接对象)
或者出现异常后进行事务的回滚
 1 mysql_conn.rollback() # 如果插入失败,回滚事务 
 

⑥最后对cursor对象和conn对象进行释放,先释放cursor对象,再释放conn对象

 1 mysql_cursor.close()

2 mysql_conn.close() 

 

 

 

 

PS.如果链接hive数据库(不需要进行事务的显式提交,因为hive中的select和普通的insert都是非事务性的

 

 

 事务性与非事务性

 

posted @   连师傅只会helloword  阅读(4)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
历史上的今天:
2024-02-19 c++中字符串的比较
2024-02-19 P1012 [NOIP1998 提高组] 拼数
点击右上角即可分享
微信分享提示