-
一、数据表
1. 概述
数据表(或称表)是数据库最重要的组成部分之一,是其他对象的基础。
实质就是一张二维表,其中行称为记录,列称为字段。
数据类型
描述
integer(size)
int(size)
smallint(size)
tinyint(size)
仅容纳整数。在括号内规定数字的最大位数。
decimal(size,d)
numeric(size,d)
容纳带有小数的数字。
"d" 规定小数点右侧的最大位数。
char(size) 容纳固定长度的字符串(可容纳字母、数字以及特殊字符)。
在括号中规定字符串的长度。
varchar(size)
容纳可变长度的字符串(可容纳字母、数字以及特殊的字符)。
在括号中规定字符串的最大长度。
date(yyyymmdd)
容纳日期。
二、 创建数据表
1. 创建数据表
CREATE TABLE [IF NOT EXISTS] table_name( column_name data_type, .... );
Demo: 创建一张名为 tb1 的表,包含 usename ,age 和 salary 三个字段
CREATE TABLE tb1( username VARCHAR(20), age TINYINT UNSIGNED, salary FLOAT(8,2) UNSIGNED );
2. 查看数据表列表
SHOW TABLES [FROM db_name] [LIKE 'patten' | WHERE expr] ;
Demo:
SHOW TABLES;
3. 查看数据表结构
SHOW COLUMNS FROM tbl_name;
或
DESC tbl_name;
4. 插入记录
INSERT [INTO] tbl_name[(col_name,...)] VALUES(val,..);
Demo: 为之前创建的 tb1 插入一条记录
INSERT tb1(username,age,salary) VALUES("John",27,4999.60);
5. 查找记录
SELECT expr,... FROM tbl_name;
Demo: 查找之前为 tb1 插入的记录
SELECT * FROM tb1;
三、 字段属性
1. 空值与非空
NULL,字段值可以为空
NOT NULL,字段值禁止为空
Demo: 为 t2 表的 name 字段设置非空
CREATE TABLE t2( name NOT NULL );
2. 自动编号
AUTO_INCREMENT
自动编号,且必须与主键组合使用
默认情况下,起始值为 1,每次增量为 1
该子段一定为数值型,如果为浮点数小数位数为 0
3. 主键
PRIMARY KEY
主键不一定必须和自动编号使用
主键自动为 NOT NULL
主键保证记录的唯一性
每张表只能存在一个主键
4. 唯一约束
UNIQUE KEY
唯一约束可以保证记录的唯一性
唯一约束的字段可以为空值(NULL)
每张数据表可以存在多个唯一约束
5. 默认约束
DEFAULT
当插入记录时,如果没有明确为字段赋值,则自动赋予默认值
查看全部 -
如果字段不唯一 必须加表名
查看全部 -
注意别名 用join的时候
查看全部 -
事实外键 不加foreign key 更加常用
查看全部 -
多表更新 + 子查询select 配套使用
查看全部 -
在mySQL里 join cross join 和 inner join是等价的
还有 LEFT OUTER JOIN 和 RIGHT JOIN可以省略 outer
查看全部 -
DESC tdb_goods_cates;
显示字段?
查看全部 -
将查询的结果写入数据表
查看全部 -
IN = ANY 等价
NOT IN !=ALL 等价
查看全部 -
NOT IN 子查询
查看全部 -
ANY SOME ALL 关键字
查看全部 -
AVG ROUND
查看全部 -
子查询可以返回标量 行 列 或者子查询
查看全部 -
子查询必须出现在圆括号内
查看全部 -
SET NAMES gbk; 不影响真实的记录
查看全部
举报