标签:Python 数据库 db pymysql cursor 数据表 基本操作 列名
一、Python-数据管理的利器
Python丰富、功能强大的第三方库为大数据管理提供了一个很好的接口:Pyhton使用pandas、xlwings等库实现数据表的处理;使用numpy和scipy等库完成高级数值和科学计算;此外还能利用pyecharts、seaborn等库制作精美的图表…
Python应用于数据库,能将数据库中的数据接入上述接口,还能将sql语句封装成方法,避免繁琐的输入,同时能实现数据库的自动化运维。
二、数据库的基本操作
1. 创建数据库
CREATE database db_name;
创建名为“db_name”的数据库据。
2. 使用数据库
USE db_name;
使用db_name数据库
3. 查看数据库表
show tables;
查看该数据库中的表。
4. 创建表
CREATE TABLE 数据表名(列名1 属性, 列名2 属性...);
5.查看表结构
以下四种方法均可
SHOW COLUMNS FROM 数据表名;
SHOW COLUMNS FROM 数据表名.数据库名;
DESCRIBE 数据表名;
DESCRIBE 数据表名 列名;
6.向表中插入数据
INSERT INTO 表名(列名1,列名2,列名3...)
VALUES (值1,值2,值3...);
7.查询插入结果
select *from 表名;
三、pymysql连接数据库
pymysql工作原理:创建数据库对象和游标对象,通过游标对象向数据库输入操作语句,相当于直接向cmd窗口输入sql语句。
- 连接数据库
(1)connect函数
db = pymysql.connect(host="数据库服务器所在的主机", user="以登录身份登录的用户名", password="登录密码", database="连接的数据库")
(2)实例:连接数据库并查看数据库版本
import pymysql
db = pymysql.connect(host="localhost", user="root", password="chen", database="mysql")
# 调用对象,创建游标对象
cursor = db.cursor()
# 执行数据库操作,SQL预计或者数据库指令。
cursor.execute("SELECT VERSION()")
# 获取查询结果集中的下一条记录。
data = cursor.fetchone()
print(f"Database version: {data}")
db.close()
- 向数据表插入数据
import pymysql
import datetime
def insert_record():
db = pymysql.connect(host="localhost", user="root", password="chen", database="db_test")
cursor = db.cursor()
sql = "INSERT INTO tb_admin(id,user,password,createtime)" \
"VALUES ({}, '{}', '{}', '{}')".format(1, "小派酱", "python", datetime.datetime.now().strftime("%Y-%m-%d"))
try:
cursor.execute(sql)
db.commit()
print("Sucessfully insert!")
except Exception as e:
print("error: ", e)
db.rollback()
db.close()
if __name__ == '__main__':
insert_record()
四、数据库的可视化管理
工具1. mysql workbench
参考文章:
《mysql workbench下载和使用》
《mysql汉化-workbench汉化-xml文件》
下载workbench方便数据库的管理
标签:Python,数据库,db,pymysql,cursor,数据表,基本操作,列名 来源: https://blog.csdn.net/js010111/article/details/118405990
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。