数据库整理(基础知识,库操作,表操作,行的增删改)

0 数据库的基础知识

安装

修改用户密码

修改字符及编码

数据类型:

  数值类型:整型,浮点型

  字符串类型:char(定长),varchar(不定长) 

     两者都是字符串类型,可以在后面接宽度,char在磁盘上的存储空间均为固定的,保存的时候不需要考虑数据长度,

             定长在查询的时候也不需要考虑长度,因而读取速度快;

             varchar插入和查询速度相对较慢,存储数据时,按照数据长度进行存储,每次都需要在存储前计算数据长度,在数据空间

             前开辟1或2个字节来存储数据的内存长度。在读取数据的术后需要先读取数据的长度,再读取数据内容。这样的速度较慢,                                                                                                       但是多数情况下可以节省空间

  日期:year,date,time,datetime(重点)

  枚举类型:enum(“1”,“2”,“3”)  多个备选项选一

  集合类型:set(“1”,“2”,“3”) 多个备选项选多个

完整性约束:

  not null:不能为空

  defult:设置默认值

  unique:唯一即不可重复,可以加速查询

  primary key:主键,唯一且非空,每个表中都只有一个主键。未指定的时候则系统自动寻找符合两者要求的一项,再无则指定一个看不见的字段为主键。

  auto_increment:自增,一般加在主键之后。其步长及初始值均可修改。

  foreign key:外键,建立表之间的关系

    一对多:T1为一,T2为多,则T1里的一条数据可以对应T2内的多条数据

    create table T2(字段名,数据类型,约束条件)

    create table T2(id int  primary key auto_increment,

            name char(10) not null,

            sex enum('男','女’) defult '男' not null,

            id_card char(18) not null and unique,

            T1_id int not null,

            constraint fk_t1_t2(自己设定的外键名字) foreign key (T1_id) references T1(id被关联的的字段,不为空且唯一)

            )即在多的一个表里设置外键

              一对一:两表的数据都只能对应对方的一条

    create table T2(字段名,数据类型,约束条件)

    create table T2(id int  primary key auto_increment,

            name char(10) not null,

            sex enum('男','女’) defult '男' not null,

            id_card char(18) not null and unique,

            T1_id int not null and unique,                同上不一样的地方在于这里加了唯一限制

            constraint fk_t1_t2(自己设定的外键名字) foreign key (T1_id) references T1(id:被关联的的字段,不为空且唯一)

            )

    多对多:

      建立第三个表,其表头为:id  T1_id  T2_id

1 库操作

  增 create database 库名;

  删 drop database 库名;

  改 alter database 库名 charset utf8;

  查 show databases;此处多个s

    show create database 库名 \G;  库名后可不接\G

    输入\C可以提前结束已错的语句

 2 表操作

  增 create table 表名(字段1 类型1,字段2,类型2);

  删 drop table 表名;

  改(字段的修改,表结构的修改)

    alter table 表名 rename 新表名;  改表名

    alter table 表名 modify 字段名 数据类型 完整性约束;  改字段名

    alter table 表名 change 原名 新名 数据类型 完整性约束;  改字段名

    alter table 表名 add 字段 数据类型 完整性约束 first/after 字段(用于定位);  加字段

    alter table 表名 add foreign key(本表字段)references 被关联表的表名(id); 加外键

  查 show tables;  查看表

 3 行操作

  增 insert into 表名 values(数据1,数据2);

  删 delete from 表名 where 条件;条件成立则执行前面,不成立就废了 

  改 update 表名 set 字段=‘新内容’ where 条件;

 

转载于:https://www.cnblogs.com/shachengcc1/p/11415683.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值