MySQL表操作
1.先进入某一个数据库.
2.输入建表的命令:
--------------------------------------------
CREATE TABLE 表名(
列名1 列的类型 [约束],
列名2 列的类型 [约束],
....
列名N 列的类型 约束
);
注意:最后一行没有逗号
--------------------------------------------
若在建表中使用到了数据库的关键字.
比如新建一张订单表:(order),但是order是数据库中的关键字(排序使用).
表名:t_order,若费用使用order这个单词.此时使用反引号(`)括起来,`order`.
一般,起表名为:t_名字。
查看表结构:
DESC table_name;
查看表的详细定义(显示表的定义SQL语句):
SHOW CREATE TABLE table_name;
删除表:
DROP TABLE table_name;
表的约束(针对于某一列):
1.非空约束:NOT NULL,不允许某列的内容为空。
2.设置列的默认值:DEFAULT。
3.唯一约束:UNIQUE,在该表中,该列的内容必须唯一。
4.主键约束:PRIMARY KEY, 非空且唯一。
5.主键自增长:AUTO_INCREMENT,从1开始,步长为1。
6.外键约束:FOREIGN KEY,A表中的外键列. A表中的外键列的值必须参照于B表中的某一列(B表主键)-明天讲解。
-------------------------------------------------------------------------------------
主键设计,唯一标识某一行数据的:
1:单字段主键,单列作为主键,建议使用。
复合主键,使用多列充当主键,不建议。
2:主键分为两种:
1).自然主键:使用有业务含义的列作为主键(不推荐使用),比如身份证号码;
2).代理主键:使用没有业务含义的列作为主键(推荐使用);
DOME:
创建一张学生信息表,记录学生的id,name,age.
CREATE TABLE `t_student`
(
`id ` bigint,
`name ` varchar(20),
` age ` int
);
CREATE TABLE 't_student' ( 'id' bigint(20), DEFAULT NOLL, 'name' Vachar(20) DEFAULT NULL, 'age' int(11) DEFAULT NULL. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `t_student` ( `id` BIGINT, `name` VARCHAR(20) UNIQUE NOT NULL, `age` INT DEFAULT 100 );