数据库(Database)
数据表 table
列 column
行 row
冗余
主键 primary key
外键 foreign key
复合键
索引
参照完整性
MySQL 数据范例
三类:数值、日期/时候和字符串(字符)
数值
TINYINT 1 字节(0,255)
SMALLINT 2 字节(0,65 535)
MEDIUMINT 3 字节
INT或INTEGER 4 字节 BIGINT 8 字节
FLOAT 4 字节 DOUBLE 8 字节 DECIMAL
日期时候
DATE 日期值
TIME 时候值或持续时候
YEAR 年份值
DATETIME 夹杂日期和时候值
TIMESTAMP 时候戳
字符串
CHAR 0-255字节 、VARCHAR 0-65535 字节
BINARY、VARBINARY、BLOB、TEXT、ENUM和SET
事件是必需满足4个前提(ACID):
Atomicity(原子性)、Consistency(稳定性)、Isolation(断绝性)、Durability(可靠性)
1、事件的原子性:一组事件,要么胜利;要么撤回。
2、稳定性 : 有不法数据(外键束缚之类),事件撤回。
3、断绝性:事件自力运转。一个事件处理后的效果,影响了其他事件,那末其他事件会撤回。
事件的100%断绝,须要捐躯速率。
4、可靠性:软、硬件崩溃后,InnoDB数据表驱动会应用日记文件重构修正。
可靠性和高速率不可兼得, innodb_flush_log_at_trx_commit选项 决议什么时候吧事件保存到日记里。
敕令以下:
mysql> -uroot -p123456 上岸 mysql> grant all on test.* to 'pengshiyu'@'localhost' -> identified by '123456'; 建立用户 mysql> quit 退出 mysql> show databases; 检察数据库 mysql> create database test; 建立数据库 mysql> create database test charset utf8; 指定字符集支撑中文 mysql> show create database test; 检察数据库信息 mysql> drop database test; 删除数据库 mysql> use test; 进入数据库 mysql> create table student( -> id int auto_increment, -> name char(32) not null, -> age int not null, -> register_data date not null, -> primary key (id) -> ); 建立表 mysql> show tables; 检察表 mysql> desc student; 检察表构造 mysql> describe student; 检察表构造 mysql> show columns from student; 检察表构造 mysql> insert into student(name, age, register_data) -> values('tom', 27, '2018-06-25'); 增添纪录 mysql> select * from student; 查询数据 mysql> select * from student\G 按行输出 mysql> select * from student limit 3; 限定查询数目 mysql> select * from student limit 3 offset 5; 抛弃前5条数 mysql> select * from student where id > 3; 前提查询 mysql> select * from student where register_data like "2018-06%"; 隐约查询 mysql> update student set name = 'cxx' where id = 10; 修正 mysql> delete from student where id = 10; 删除 mysql> select * from student order by age; 排序默许ascend mysql> select * from student order by age desc; 降序descend mysql> select age,count(*) as num from student group by age; 分组 mysql> select name, sum(age) from student group by name with rollup; 汇总 mysql> select coalesce(name,'sum'), sum(age) from student -> group by name with rollup; 汇总取别号 mysql> alter table student add sex enum('M','F'); 增添字段 mysql> alter table student drop sex; 删除字段 mysql> alter table student modify sex enum('M','F') not null; 修正字段范例 mysql> alter table student modify sex -> enum('M','F') not null default 'M'; 设置默许值 mysql> alter table student change sex gender -> enum('M','F') not null default 'M'; 修正字段称号 mysql> create table study_record( -> id int not null primary key auto_increment, -> day int not null, -> stu_id int not null, -> constraint fk_student_key foreign key (stu_id) references student(id) -> );定名外键束缚 建立表 mysql> create table A(a int not null); mysql> create table B(b int not null); 插进去数据 mysql> insert into A(a) values (1); mysql> insert into A(a) values (2); mysql> insert into A(a) values (3); mysql> insert into A(a) values (4); mysql> insert into B(b) values (3); mysql> insert into B(b) values (4); mysql> insert into B(b) values (5); mysql> insert into B(b) values (6); mysql> insert into B(b) values (7); 交集 内衔接 mysql> select * from A inner join B on A.a = B.b; mysql> select a.*, b.* from A inner join B on A.a = B.b; 差集 mysql> select * from A left join B on A.a =B.b; 左外衔接 mysql> select * from A right join B on A.a =B.b; 右外衔接 并集 mysql> select * from a left join b on a.a=b.b union -> select * from a right join b on a.a = b.b; 全衔接 mysql> begin; 最先事件 mysql> rollback; 回滚事件 mysql> commit; 提交事件 mysql> show index from student; 检察索引 mysql> create index name_index on student(name(10)); 建立索引 mysql> drop index name_index on student;删除索引
相干引荐:
MySQL 语句大全:建立、受权、查询、修正
30 个优化 MySQL 语句的技能
PHP中经常使用的几个 mysql 语句_PHP教程
以上就是MySQL经常使用语句简介的细致内容,更多请关注ki4网别的相干文章!