SQL

本篇博客仅作为学习,如有侵权必删。

Mysql

1. 相关概念:

  • sql语句必须以分号结尾
  • 数据库:文件夹。
  • 表:文件夹里的文件。
  • 记录:文件中的一行行数据。

2. 数据库

1
2
3
4
5
6
7
8
9
10
11
12
13
'''基于库的增删改查'''
1.创建库
create database 库名;
2.查看库
show databases; 查看所有的库名称
show create database 库名; 查看指定库信息
select database(); 查看当前使用的数据库
3.编辑库
alter database 库名 charset='utf8';
4.删除库
drop database 库名;
5.查看数据库使用端口
show variables like 'port';

3. 表

(1)构成

  • 字段:事物的所有属性
  • 列:事物的某一个属性的集合
  • 记录:行
  • 主键:区分表里的每一条数据行。唯一标识。
  • NULL值:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
操作表之前需要先确定库
create database db1;
切换操作库
use db1;

1.创建表
create table 表名(字段名 字段类型,字段名 字段类型);
2.查看表
show tables; 查看库下所有的表名称
show create table 表名; 查看指定表信息
show create table <表名\G> (加上\G,有较高的易读性)
describe 表名; 查看表结构
desc 表名;
ps:如果想跨库操作其他表 只需要在表名前加库名即可
desc mysql.user;
3.编辑表
alter table 表名 rename 新表名;
4.删除表
drop table 表名;

4. 记录

(1)数据类型

  • 定长字符串:CHAR(n),n为最多保存字符数量。如果字符长度是10,而输入的数据只有5位,则用5位空格填充。
  • 变长字符串:VARCHAR(n), n为最多字符数量
  • 大对象类型:TEXT,大VARCHAR字段,可用于存储大字符集,如JHTML输入。
  • 数值类型:NUMERIC,通用的数值类型
  • 小数类型:DECIMAL(p,s),p表示数值总位数,s表示小数点后位数。DECIMAL(4,2):12.449存为12.45。
  • 整数:
  • 浮点数:FLOAT,总位数和小数点位数都可变。
  • 日期和时间:DATE、TIME、DATETIME(YEAR、MONTH、DAY、HOUR、MINUTE、SECOND)、TIMESTAMP
  • 直义字符串:???
  • NULL
  • 布尔值:TRUE、FALSE、NULL
  • 自定义类型:采用语句创建类型。create type PERSON AS OBJECT(NAME VARCHAR(30))
  • 域:有效数据类型的集合。create domain MONEY_D AS NUMBER(8,2) ???
1
2
3
4
5
6
7
8
9
10
'''基于记录的增删改查'''
1.插入数据
insert into 表名 values(数据值1,数据值2);
2.查询数据
select * from 表名; 查询表中所有的数据
3.编辑数据
update 表名 set 字段名=新数据 where 筛选条件;
4.删除数据
delete from 表名;
delete from 表名 where id=2;