数据库和表操作

Posted q767498226

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库和表操作相关的知识,希望对你有一定的参考价值。

一.库操作

1.创建库

  create database 库名[charset utf8];  创建库[字符集为utf8] 默认为utf8

2.查看库

  show databases;  查看所有库

  show create database 库名;  查看某个库的创建信息

  select database();  查看当前操作的数据库名

3.删除库

  drop database 库名;  删除某个库

4.修改库

  alter database 库名 charset utf8;  修改库的字符集为utf8

二.mysql的存储引擎

1.innoDB引擎

  特点:1.支持事务

     2.行级锁定

     3.读写阻塞与事务隔离级别有关

     4.高效缓存(索引和数据)

     5.支持外键约束

2.MyISAM引擎

  特点:1.不支持事务

     2.表级锁定

     3.读写互相阻塞

     4.只能缓存索引

     5.不支持外键约束

三.SQL的数据类型

1.数值类型

技术分享图片

2.日期类型

  year  YYYY

  data  YYYY-mm-dd

  time  HH:MM:SS

  datatime  YY-mm-dd HH:MM:SS

  timestamp  YYmmdd HHMMSS

3.字符串类型

  char  定长字符串

  varchar  不定长字符串

4.枚举和集合类型

  enum("a","b","c")  单选

  eg :

    create table shirts(name char(20) , size enum("xxl","xl");

    insert into shirts(name,size) values ("dress shirt","xxl"),("T-shirt,"xl");

  set("a","b","c")  多选

  eg:

    create table myset (col set("a","b","c","d"));

    insert into myset (col) values("a,b"),("a","b","c")

四.完整性约束

1.空和默认值

  not null  不能为空,如果不约束默认为能为空

  default  默认值

2.唯一,可以加速查询

  unique  约束字段名必须唯一

  unique(字段名1,字段名2)  联合唯一

3.主键

  primary key  主键,不能为空且唯一,一张表必须有且只有一个主键

  primary key(字段名1,字段名2)  联合主键

4.自动增长(用于主键)

  auto_increment  约束字段为自动增长

5.外键

  foreign key   外键,标明表和表之间的关系

  foreign key (字段名) references 表名(字段名) [on update cascade on delete cascade]

五.表操作

1.创建表

  create table 表名(字段名1,类型[(宽度) 约束条件],

          字段名2,类型[(宽度) 约束条件]);

2.查看表结构

  describe 表名;    查看表结构

  show create table 表名G;  查看表详细结构

3.修改表 alter table

  1.修改表名

    alter table 表名  rename 新表名

  2.增加字段

    alter table 表名  add 字段名 类型[(宽度) 约束条件 位置];

  3.删除字段

    alter table 表名  drop 字段名;

  4.修改字段

    alter table 表名  modify 字段名 类型 [约束条件];

    alter table 表名  change 旧字段名 新字段名 旧数据类型 [约束条件];  可以想改就改

  5.增加外键

    alter table 表名  add foreign key (字段名) references 表名(字段名);

  6.增加主键[自动增长]

    alter table 表名  modify 字段名 类型 primary key [auto_increment];

以上是关于数据库和表操作的主要内容,如果未能解决你的问题,请参考以下文章

库操作和表操作

数据库和表操作

MySQL-数据库和表的基本操作

DLL:操作数据库和表

Mysql --库和表的操作

数据库和表的基本操作