文章首发地址

数据库的创立应用

  • 间接创立数据库

    create database community;
  • 查看以后在哪个库里边

    select database();
  • 进入库的操作

    use community;
  • 判断是否存在,如果不存在则创立数据库

    create database if not exists community;    
  • 创立数据库并指定字符集为 utf-8

    create database community default character set utf-8;  
  • 查看某个库是什么字符集

    show create database community;
  • 查看以后mysql应用的字符集

    show variables like 'character%';

mysql创立表罕用de数据类型

  • mysql常见数据类型

    <1>整数型   类型      大小      范畴(有符号)               范畴(无符号unsigned)    用处   TINYINT   1 字节    (-128,127)                (0,255)                 小整数值   SMALLINT  2 字节    (-32768,32767)            (0,65535)               大整数值   MEDIUMINT 3 字节    (-8388608,8388607)        (0,16777215)            大整数值   INT       4 字节    (-2147483648,2147483647)  (0,4294967295)          大整数值   BIGINT    8 字节     ()                       (0,2的64次方减1)        极大整数值<2>浮点型 FLOAT(m,d)  4 字节    单精度浮点型  备注:m代表总个数,d代表小数位个数 DOUBLE(m,d) 8 字节    双精度浮点型  备注:m代表总个数,d代表小数位个数  <3>定点型 DECIMAL(m,d)    依赖于M和D的值    备注:m代表总个数,d代表小数位个数  <4>字符串类型  类型          大小              用处 CHAR          0-255字节         定长字符串 VARCHAR       0-65535字节       变长字符串 TINYTEXT      0-255字节         短文本字符串 TEXT          0-65535字节       长文本数据 MEDIUMTEXT    0-16777215字节    中等长度文本数据 LONGTEXT      0-4294967295字节  极大文本数据  char的优缺点:存取速度比varchar更快,然而比varchar更占用空间 varchar的优缺点:比char省空间。然而存取速度没有char快  <5>工夫型 数据类型    字节数            格局                    备注 date        3                yyyy-MM-dd              存储日期值 time        3                HH:mm:ss                存储时分秒 year        1                yyyy                    存储年 datetime    8                yyyy-MM-dd HH:mm:ss     存储日期+工夫 timestamp   4                yyyy-MM-dd HH:mm:ss     存储日期+工夫,可作工夫戳

mysql创立表

  • 语法

    CREATE TABLE 表名 (                字段名 字段类型 约束条件 阐明                );
  • 约束条件

    comment         ----阐明解释not null        ----不为空default         ----默认值unsigned        ----无符号(即负数)auto_increment  ----自增zerofill        ----主动填充unique key      ----惟一值
  • 创立sql

    CREATE TABLE `interview` (`id` int(10) NOT NULL AUTO_INCREMENT,`title` varchar(128) DEFAULT NULL COMMENT '文章题目',`content` text COMMENT '文章内容',`html_content` varchar(128) DEFAULT NULL,`blog_img` varchar(128) DEFAULT NULL COMMENT '主动配图链接',`author_id` int(10) DEFAULT NULL COMMENT '作者id',`author_name` varchar(32) DEFAULT NULL COMMENT '作者昵称',`tag` int(3) DEFAULT NULL COMMENT '分类id',`type` int(2) DEFAULT '0' COMMENT '0:失常,1:置顶',`status` int(2) DEFAULT '0' COMMENT '0:失常,1:精髓',`comment_count` int(11) DEFAULT '0',`score` double DEFAULT '0',`created` datetime DEFAULT NULL COMMENT '文章创立工夫',`updated` datetime DEFAULT NULL COMMENT '文章更新工夫',PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
  • 创立一张与post表构造一样的表

    create table 新表名 as select * from post where 1=2;
  • 创立一张与post表数据和构造一样的表

    create table 新表名 as select * from post where 1=1;create table 新表名 like post;

查看表的根本构造信息

  • 查看数据库中的所有表

    show tables;

  • 查看表构造

    desc post;

  • 查看创立表的sql语句

    show create table post;
  • \G :有完结sql语句的作用并把显示的数据纵向旋转90度

    show create table post \G

表构造的批改

  • 批改表名

    rename table post to discuss_post;
  • 增加列

    给表增加一列:alter table post add type varchar(2) comment '类型';给表最后面增加一列:alter table post add cate varchar(10) first;给表某个字段后增加一列:alter table post add authorName varchar(32) comment '作者昵称'  after id;
  • 批改列类型

    alter table post modify authorName varchar(64);
  • 批改列名

    语法:alter table 表名 change 旧列名 新列名 类型;alter table user change authorName author_name varchar(64);
  • 删除列

    alter table 表名 drop 列名;alter table user drop author_name;
  • 批改字符集

    alter table 表名 character set 字符集;alter table post character  set GBK;
  • mysql表的删除

    drop table 表名;drop table post;