数据库整理
2022/6/17 6:20:14
本文主要是介绍数据库整理,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
目录- 数据库操作语句以及关键词
- 1.针对库以及mysql
- 2.操作表
- 3.操作记录
- 4.字段类型
- 5.python操作MySQL
数据库操作语句以及关键词
1.针对库以及mysql
1.mysqladmin -uroot -p原密码 password 新密码 2.set password=PASSWORD('新密码'); # 修改数据库密码 3.show databases; # 查看当前所有数据库名称 4.show create database dbname; # 查看指定库信息 5.show database dbname; # 创建一个库 6.alter database dbname charset='utf8'; # 修改字符编码 7.drop database dbname; # 删除指定库 8.select database(); # 查看当前所在的库 9.use dbname; # 切换到该库下面
2.操作表
1.show tables; # 查看当前库下的表名 2.show create table tbname; # 查看表信息 3.desc tbname; # 查看表内的字段信息 4.create table tbname(字段名称1 字段类型1 约束条件可多个,字段名称2 字段类型2 约束条件) # 创建一个表 5.drop table tbname; # 删除一个表 6.alter table tbname rename 新tbname; #修改表名 7.alter table tbname add 字段名 字段类型; alter table tbname add 字段名 字段类型 after 指定字段名; alter table tbname add 字段名 字段类型 first; 8.alter table tbname change 指定字段名 该字段新名 字段类型 约束条件; # 修改字段信息,字段名可有可无 9.alter table tbname drop 指定字段名; 10.create view 视图名 as sql语句;
3.操作记录
1.select * from tbname; # *表示所有也可替换成字段名 2.select * from dbname.tbname\G; # 查看某库下的表名 3.insert into tbname values(值1,值2),(值3,值4) # 对于tbname后面也可以跟指定的字段后面的值对应传值 4.update tbname set 字段名=新值 where 修改的条件; 5.delete from tbname where 删除的条件;#无条件删全部
4.字段类型
# 整型 1.tinyint 2.smallint 3.int(4) # 展示长度最多为4 zerofill不够位数用0填 4.bigint # 浮点型 1.float(15,2) # 一共15位数,小数占两位 2.double 3.decimal # 字符类型 1.char(4) # 固定长度为4 2.varchar(4) # 最大限制为4 # 枚举 1.enum('1','2','3') # 插入数据只能是定义中的一个 2.set('1','2','3') # 插入数据可以是任意个数 3.date/datetime/time/year # 时间格式 # 约束条件 1.unsigned # 固定id字段只能为正数且去除了正负号 2.zerofill # 不够位数用0填充 3.not null # 字段数据不能不传也不能传null 4.default 'x' # 字段默认为x 5.unique # 指定字段不能重复 6.primary key # 设置主键方便查找 7.autu_increment # 不用传值自动增加 8.foreign key(主键) references 关联表名(字段) on update cascade # 级联更新 on delete cascade # 级联删除 # 筛选关键词 1.like '%o%'/'____' # 模糊查找 %:匹配任意个数的任意字符 _:匹配单个个数的任意字符 2.group by 分组 group_concat(参数,) 聚合函数 max(参数) 统计最大值 min 统计最小值 sum 统计求和 count 计数 avg 平均数 3.having # 针对分组之后的筛选 where # 针对分组之前的筛选 4.distinct # 对莫一行去除重复 5.order by # 排序desc设置为降序默认为升 6.limit 5,5; # 限制数据展示的条数 7.regexp # 正则匹配 8.inner join 内连接 left join right join union # 全连接 # 对于表数据主键truncate tbname;则可以实现重置
5.python操作MySQL
# 1.链接服务端 conn_obj = pymysql.connect( host='127.0.0.1', # MySQL服务端的IP地址 port=3306, # MySQL默认PORT地址(端口号) user='root', # 用户名 password='jason123', # 密码 也可以简写 passwd database='jp04_3', # 库名称 也可以简写 db charset='utf8' # 字符编码 千万不要加杠utf-8 aotucommit=True # 自动二次确认 ) # 要善于查看源码获取信息 # 2.产生获取命令的游标对象 cursor = conn_obj.cursor( cursor=pymysql.cursors.DictCursor ) # 括号内不写参数 数据是元组要元组 不够精确 添加参数则会将数据处理成字典 # 3.编写SQL语句 # sql1 = 'show tables;' sql1 = 'select * from teacher;' # SQL语句会被高亮显示 不用惊慌 # sql1 = 'select * from score;' # SQL语句会被高亮显示 不用惊慌 # 4.执行SQL语句 affect_rows = cursor.execute(sql1) print(affect_rows) # 执行SQL语句之后受影响的行数 # 5.获取结果 res = cursor.fetchall() print(res) '''补充说明''' 获取SQL语句执行的结果 跟读取文件内容的read方法几乎一致(光标) fetchone() fetchmany() fetchall() cursor.scroll(1, 'relative') # 相对于当前位置往后移动一个单位 cursor.scroll(1, 'absolute') # 相对于起始位置往后移动一个单位
这篇关于数据库整理的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-19《2023版Java工程师》课程升级公告
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现
- 2024-06-03为什么以及如何要进行架构设计权衡?
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)
- 2024-05-31全网首发!软考2024年5月《软件设计师》真题+解析+答案!(21-30题)
- 2024-05-30【Java】百万数据excel导出功能如何实现