mysql:建表及书写规范,历史

目标:创建一个数据库,school(create database 数据库名; )

   使用某个数据库 ,(use database 数据库名)

   

创建学生表(列,字段),使用sql语句创建

   学号 int   登陆密码varchar(20)  姓名varchar(30)  性别varchar(2)  

   出生日期(datatime)  家庭住址email

 

注意点:使用英文(),表的名称 和 字段 尽量使用` `括起来

    AUTO_INCREMENT 自增

    字符串使用 单引号括起来

    所有语句后面加逗号(英文的),最后一个不用加

    primary key 主键,一般一个表只有一个唯一的主键

DROP TABLE IF EXISTS `student`;
CREATE TABLE `student` (
  `id` int(4) NOT NULL AUTO_INCREMENT COMMENT '学号',
  `name` varchar(30) NOT NULL DEFAULT '匿名' COMMENT '姓名',
  `pwd` varchar(20) NOT NULL DEFAULT '123456' COMMENT '密码',
  `sex` varchar(2) NOT NULL DEFAULT '' COMMENT '性别',
  `brithday` datetime DEFAULT NULL COMMENT '出生日期',
  `address` varchar(100) DEFAULT NULL COMMENT '家庭住址',
  `email` varchar(50) DEFAULT NULL COMMENT '邮箱',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

格式

CREATE TABLE [IF NOT EXISTS]`表名`(
    ·字段名· 列类型 [属性] [索引] [注释],
    ·字段名· 列类型 [属性] [索引] [注释],
     ......
    ·字段名· 列类型 [属性] [索引] [注释][表的类型][字符集设置][注释]

--方括号中的内容可写可不写

 

 

科普

SHOW CREATE DATABASE school -- 查看创建数据库的语句
SHOW CREATE TABLE student -- 查看student数据表的定义语句
DESC student -- 显示表的结构

-- 关于数据库引擎,了解就可
/* 
INNODB 默认使用
MYISAM 早些年使用的
  MYSIAM INNODB
事务支持 不支持 支持
数据行锁定 不支持 支持
外键约束 不支持 支持
全文索引 支持 不支持
表空间大小 较小 较大,约为2被

常规使用操作

  MYISAM  节约空间,速度较快

  INNODB 安全性高,支持事务的处理和多表多用户操作

 

在物理空间位置

  所有的数据文件都在data目录下

  本质还是文件的存储

 

MYSQL引擎在屋里文件上的区别

  innoDB在数据表中只有一个*.frm文件,以及上级目录下的ibdata1文件

  MYISAM 对应我文件

    *.frm   表结构定义的文件

    *.MYD   数据文件(data)

    *.MYI     索引文件(index)

CHARSET=utf8

不设置,使用的是mysql默认的字符集编码(不支持中文)

MySOL的默认编码是Laint1,不支持中文

在my.ini中配置默认的编码

eg:character-set-server=utf8 

 

数据库的本质:各种特定文件的集合

    

 

 

   

    

 

posted @ 2020-09-23 09:53  凸然猿  阅读(390)  评论(0编辑  收藏  举报