mysql介绍:
它是数据库,存储数据用的,增、删、改、查是对其使用的最基本的要求。
一、mysl
基本操作:
1.库操作
create database q1; 创建一个q1数据库;
drop database q1; 删除q1数据库;
show databases; 展示所有数据库;
2.表格操作
创建表格:
create table 表名(
列名 类型 是否可以为空,
列名 类型 是否可以为空
)ENGINE=InnoDB DEFAULT CHARSET=utf8
类型后面可以跟:
1.null 可以不填 not null 必须要填
2.defalut 2 指定默认内容是2
3.auto_increment primary key 从1开始自增 一个表格只能有一个自增列,一般都会加一个主键(primary key)
4.primary key 主键,一种特殊的唯一索引,不允许有空值,如果主键使用单个列,则它的值必须唯一,如果是多列,则其组合必须唯一。
删除表格:
drop table 表名;
清空表格;
delete
from 表名;
truncate table 表名;
修改表格:
增加列 alter table 表名 add coob int
删除列 alter table 表名 drop column 列名
修类型:
修改类型
alter table 表名 modify column 列名 类型;
修改名称与类型
alter table 表名 change 原列名 新列名 类型;
添加主键:alter table 表名 add primary key(列名);
删除主键:alter table 表名 drop primary key;
alter table 表名 modify 列名 int, drop primary key;
3.列操作
增:
单条添加 insert into t1(coob,mary) values(1,"girl")
多条添加 insert
into
表 (列名,列名...)
values
(值,值,值...),(值,值,值...)
删:
delete
from
表
where
coob=1
and
mary
=
'alex'
清空表 delete
from
表
改:update
表
set
mary
=
'alex'
where
coob>1 更改mary列的所有值为alex 前提是(coob的值小于1)
查:
select
*
from
表 显示所有的列及内容
select
*
from
表
where
id > 1 显示id值大于1的所有内容。
select
nid,
name
,gender
as
gg
from
表
where
id > 1
二、pymysql
介绍:是在python上操作mysql;
1.增删改如下:
思路:导入模块==> 创建连接==>创建游标(数据的接受与发送的枢纽)==>执行mysql语句==>commit()==>关闭游标和连接
import pymysql
#创建连接
conn = pymysql.connect(host='127.0.0.1',port=3306,user='root',password='Www123...',db="q1")
#创建游标
cursor = conn.cursor()
#执行mysql语句
# effect_row=cursor.execute("insert into tb1(coob)values('xxoo') ") #单条添加
# effect_row=cursor.executemany("insert into tb1(coob,tony)values(%s,%s)",[('a','b'),('aa','bb'),('aaa','bbb')])#多条添加
# effect_row=cursor.execute("delete from tb1 where mary>14") #删
# effect_row=cursor.execute("update tb1 set coob='dd' where mary<2") #改
# 提交,不然无法保存新建或者修改的数据
conn.commit()
# 关闭
cursor.close()
conn.close()
pymysql增、删、改
2.查:
获取表格的数据是一个元组。
import pymysql
#创建连接
conn = pymysql.connect(host='127.0.0.1',port=3306,user='root',password='Www123...',db="q1")
#创建游标
cursor = conn.cursor()
# 执行mysql语句
cursor.execute("select * from tb1")
row_1 = cursor.fetchone() #获取一行数据
# row_2 = cursor.fetchmany(3) #获取n 行数据
# row_3 = cursor.fetchall() # 获取所有数据
cursor.close()
conn.close()
查
还可以设置游标来随意更改位置,获取想要的值
# cursor.scroll(1,mode='relative') #游标的位置相对与上一次结束的位置 加1
# cursor.scroll(1,mode='absolute') #一直以第一条为起始位置
3.变元组为字典
创建游标时设置添加红色字体,即可把获取到的数据编程字典类型。
cursor=pymysql.cursors.DictCursor)
cursor.scroll(1,mode='relative') #游标的位置相对与上一次结束的位置 加1
cursor.scroll(1,mode='absolute') #一直以第一条为起始位置