当前位置: 首页 > news >正文

python查询、处理、批量存入数据

1、安装数据库连接器

首先需要安装一个数据库连接器,比如pymysql、pyodbc等,用于连接MySQL、SQL Server等不同的数据库。
安装命令如下

pip install PyMySQL

2. 连接数据库

连接数据库需要先指定数据库的主机名、端口号、用户名和密码等信息。这些信息在连接数据库之前,应该先在数据库中进行配置。

以MySQL数据库为例,示例代码:

import pymysql
conn = pymysql.connect(host='localhost', port=3306, user='root', passwd='123456', db='testdb')
cursor = conn.cursor()

上述代码中,使用pymysql模块连接MySQL数据库,需要指定主机名、端口号、用户名、密码和数据库名。connect()函数用于连接数据库,返回一个Connection对象。cursor()方法可以获得游标对象,用于执行SQL查询。

3. 执行SQL查询

一旦连接建立,执行SQL查询的方法是使用游标对象的execute()方法。

cursor.execute("SELECT * FROM mytable")

4、python将一张表里面字段为json格式的数据,按对应字段存到相应表中,代码如下:

1)mysql库

import pymysql
import json

# 连接数据库
conn = pymysql.connect(host='localhost', port=3336, user='root', passwd='BigData.2018v6', db='testdb')
cursor = conn.cursor()

# 执行SQL查询,content为
cursor.execute("SELECT `content` FROM mytable")

# 获取查询结果
rows = cursor.fetchall()
list_data = []
for row in rows:
    json_obj = json.loads(row[0])
    line = (json_obj['type'], json_obj['title'], json_obj['level'])
    list_data.append(line)
print(list_data)
sql = "INSERT INTO dong (type, title,level) VALUES (%s, %s, %s)"
cursor.executemany(sql, list_data)
# 提交更改
conn.commit()

# 关闭连接
conn.close()

2)hive

from pyhive import hive
import json

# 连接Hive服务器
cursor = hive.connect(host='hive.server', port=10000, username='hiveuser').cursor()
# 执行SQL查询,content为
cursor.execute("SELECT `content` FROM mytable")
# 获取查询结果
rows = cursor.fetchall()
list_data = []
for row in rows:
    json_obj = json.loads(row[0])
    line = (json_obj['type'], json_obj['title'], json_obj['level'])
    list_data.append(line)
print(list_data)
sql = "INSERT INTO dong (type, title,level) VALUES (%s, %s, %s)"
cursor.executemany(sql, list_data)
# 提交事务
cursor.execute('COMMIT')

相关文章:

  • LeetCode 每日一题 2023/11/27-2023/12/3
  • “SRP模型+”多技术融合在生态环境脆弱性评价模型构建、时空格局演变分析与RSEI 指数的生态质量评价及拓展
  • Dockerfile 与 Docker Compose区别
  • 队列顺序存储(详解)
  • 外包搞了6年,技术退步明显......
  • 浅谈智能配电房电力运维平台的开发与应用
  • Centos7设置永久路由
  • QT中的 容器(container)-大全
  • 智加科技获全国首张重卡无人驾驶开放道路测试牌照
  • 【源码篇】基于SpringBoot+thymeleaf实现的大学生自习室座位预定系统
  • 【MySQL】-日志系统
  • python爬虫进阶篇(异步)
  • Kubernetes1.27容器化部署Prometheus
  • pyqt5使用pyqtgraph实现动态热力图
  • UI自动化测试工具有哪些优势?
  • 蓝桥杯第四场双周赛(1~6)
  • uniapp之Vue3配置跨域(代理)
  • 算法通关村第七关—理解递归(青铜)
  • 在Springboot中操作Redis——五大数据类型
  • SSR是什么?Vue中怎么实现?
  • 市场监管总局等五部门约谈外卖平台企业
  • 国家林草局原党组成员、副局长李春良接受审查调查
  • 特朗普访中东绕行以色列,专家:凸显美以利益分歧扩大
  • 媒体谈法院就“行人相撞案”道歉:执法公正,普法莫拉开“距离”
  • 《三餐四季》广东篇今晚开播:食在岭南,遇见百味
  • 黑灰产工作室为境外诈骗集团养号引流,冒充美女与男性裸聊后敲诈勒索