ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

数据库整理

2022-06-16 22:06:16  阅读:169  来源: 互联网

标签:语句 数据库 tbname cursor 整理 table alter 字段名


目录

数据库操作语句以及关键词

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')  # 相对于起始位置往后移动一个单位

标签:语句,数据库,tbname,cursor,整理,table,alter,字段名
来源: https://www.cnblogs.com/ll71979461/p/16383682.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有