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

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')

http://www.kler.cn/a/155504.html

相关文章:

  • Objection
  • Java 网络编程(一)—— UDP数据报套接字编程
  • springboot项目中,使用ProGuard 对代码进行混淆
  • const限定符-C语言中指针的“可变与不可变”法则
  • 初探鸿蒙:从概念到实践
  • git commit 校验
  • navicat某些表为什么不按主键排序
  • linux设置主机名
  • Java研学-配置文件
  • 算法设计与实现--贪心篇
  • Spring MVC学习随笔-控制器(Controller)开发详解:控制器跳转与作用域(一)
  • “B2B+OMS方案”,赋能家电巨头构建BC订单一体化能力,促进业务增长|徐礼昭
  • 决策 Diffie-Hellman DDH 和 CDH
  • 在Springboot中操作Redis——五大数据类型
  • Python标准库:copy模块【侯小啾python领航班系列(十五)】
  • 【Java进阶】-- 设计模式
  • 关于数据劫持原理(vue2和vue3)
  • IDEA2022 Git 回滚及回滚内容恢复
  • 关于我离破500粉丝感受
  • PHP:js中怎么使用PHP变量,php变量为数组时的处理
  • 分享84个节日PPT,总有一款适合您
  • 高光谱遥感影像分类项目开源
  • 前端请求patch接口,只传入已修改字段值的字段
  • Matlab下载许可证文件 教程(在账号有许可证的前提下)
  • C语言速通笔记(1-40)
  • JavaWeb(三)