[Python基础学习]-2.2-|python&sql|-ing

内容主要参照b站《 黑马程序员python教程,8天python从入门到精通,学python看这套就够了》,链接: https://www.bilibili.com/video/BV1qW4y1a7fU?p=1&vd_source=b0665a83555604d15c1cecb7c0cfebfa
部分内容资料来自互联网,后续博客会不断完善知识点

第二章


三个关键概念——库,表,数据

常见的有:

借助SQL语言,完成对数据的增删改查等操作

SQL:数据库提供数据组织储存的能力

MYSQL


下载社区版

Webinars :网络研讨会

seminars:专家研讨会

安装过程

配置环境变量
无非就是让控制台中可以运行相关代码

bin文件夹是 存放可执行的二进制文件的文件夹。我们在使用较大型的软件时都会发现bin文件夹。bin文件夹下存放的是项目调试之后的可运行文件。
bin是二进制文件,其用途依系统而定,不能删除 。
bin为一种文件格式binary的缩写。一个后缀名为".bin"的文件,只是表明它是binary格式。比如虚拟光驱文件常用".bin"作为后缀,但并不意味着所有bin文件都是虚拟光驱文件。
一般情况下腾讯QQ的程序启动文件会被默认存进C:\Program Files (x86)\Tencent\QQ\Bin这个系统文件夹中。其他的文件也类似
Bin文件夹是一个非常重要的系统文件夹,如果用户错误删除了这个文件夹就可能导致程序无法启动系统出现错误等情况,用户一定要小心操作。

C:\Program Files\MySQL\MySQL Server 8.0\bin

ODBC(Open Database Connectivity, 开放数据库互连)是 微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准 API应用程序编程接口)。这些API利用SQL来完成其大部分任务。
成功登录

MySQL的入门使用

show databases;

基础使用命令
使用图形化工具操作MySQL

第一次加载

连接数据库

数据库不全
系统自带的数据库不要动,所以可视化里面不显示内容

SQL语言的分类
  • 数据定义:DDL

  • 数据操作:DML

  • 数据控制:DCL

  • 数据查询:DQL

报错解决
新建脚本
sql对大小写不敏感,以句号结尾
支持注释
sql注释
-- 我是注释
# 注释
/* 我是注释 */

单行执行代码的思想类似于jupytenotebook

DDL

DML

数据操纵语言(Data Manipulation Language, DML)是用于数据库操作
数据插入INSERT
sql里面的变量命名有所区别,里面是通过变量名 变量类型来定义的

insertinto student(id)values(1),(2),(3);

# 插入时候一定要注意数据并排

insertinto student (id,name,age)values(4,'Jay',32),(5,'asd',32);

数据删除DELETE
[ ]表示可选删除

insertinto student (id,name,age)values(7,'删除',68);

deletefrom student where age =68

数据更新update
字符串中一定要用单引号选中

update student set name='xxx' [where 条件判断];

DQL

基本语法

SELECT 字段列表

select id,name from student

# 只选择一些属性

分组聚合

按照一定的规则进行性别分组

基础语法

语法限制!!!!
gender中写了谁select才能用谁
age属于特殊字段——聚合函数

# 通过年龄来聚组

#

selectavg(age)from student groupby gender

排序分页
sql语句可以换行

ordered by ... [ASC|DESC]

select*from student limit5;

多个条件的执行顺序

SQL-DQL-排列分页

排序查询

asc和desc(升序和降序)

select * from student where age > 20 order by age asc;

结果的分页限制

只输出五条

select * from student limit 5;

python&SQL


pip install pymysql

基础使用

创建到MySQL的数据库链接
注意Python中的;不如sql中的;要求严格

进行查询

"""

演示Python pymysql库的基础操作

"""

frompymysqlimportConnection

# 构建到MySQL数据库的链接

# python是面向对象来操作的

conn=Connection(

host="localhost", # 主机名(ip)——Intellectual Property

port=3306, # 端口——港口

user="root",

password="Lin18772247986"

)

print(conn.get_server_info())

# 执行非查询性质SQL

cursor=conn.cursor()

conn.select_db("world") # 先选择数据库

# 执行查询性质SQL

# cursor.execute("create table test_pymysql2(id int)")

# execute就是输入命令进行查询

cursor.execute("select * from student")

results=cursor.fetchall() # """Fetch all the rows"""

print(results)

# 关闭链接

D:\ENV\envs\bigdata\python.exe "P:\020 学习# codes\python_projects\python基础学习\python&sql\01_pymysql入门.py" 8.0.31((1, None, None), (2, None, None), (3, None, None), (4, 'Jay', 32), (5, 'asd', 32))
进程已结束,退出代码0
最后可以将结果封装到元组中


数据插入

commit提交
可以设置自动提交autocommit=True

"""

演示Python pymysql库的插入

"""

frompymysqlimportConnection

# 构建到MySQL数据库的链接

# python是面向对象来操作的

conn=Connection(

host="localhost", # 主机名(ip)——Intellectual Property

port=3306, # 端口——港口

user="root",

password="Lin18772247986"

)

print(conn.get_server_info())

# 执行非查询性质SQL

# 获取一个操作的光标

cursor=conn.cursor()

conn.select_db("world") # 先选择数据库

# 执行查询性质SQL

# cursor.execute("create table test_pymysql2(id int)")

# execute就是输入命令进行查询

# cursor.execute("select * from student")

# results=cursor.fetchall() # """Fetch all the rows"""

# 报错提示,没有gender这一列————学会读取错误内容

cursor.execute("insert into student values(10001,'周杰伦',35)")

# 通过commit确认

conn.commit()

# 关闭链接

conn.close()

事务

综合案例——sql&python


数据读取出来写入到mysql中
基于数据结构,得到建表语句:

create database py_sql charset utf8;

字符编码格式

表创建成功

逐步读取其中的数据并且 按照一定的方式往sql里面写入

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值