操作数据库->操作数据库中的表->操作数据库中表的数据
mysql关键字不区分大小写
一、操作数据库
1、创建数据库
CREATE DATABASE [IF NOT EXISTS] westos
2、删除数据库
DROP DATABASE [IF EXISTS] westos
3、使用数据库
USE westos
注意:如果你的数据库名或表名或字段名是一个特殊字符,就需要加 `` 号 如:USE `westos`
4、查看数据库
SHOW DATABASES -- 查看所有的数据库
二、数据库的列类型
数值
tinyint: 十分小的数据 1个字节
smallint: 较小的数据 2个字节
mediumint 中等大小的字节 3个字节
int: 标准整数 4个字节 常用的 int
bigint 较大的数据 8个字节
float 浮点数 4个字节
double 浮点数 8个字节
decimal 字符串形式的浮点数 金融计算的时候,一般是使用decimal
字符串
char: 字符串固定大小的 0~255
varchar: 可变字符串 0~65535 常用的String
tinytext: 微型文本 2^8 -1
text: 文本串 2^16 -1
时间日期
data:YYYY-MM-DD 日期格式
time:HH:mm:ss 时间格式
datetime:YYYY-MM-DD HH:mm:ss 最常用的时间格式
timestamp:时间戳,1970.1.1 到现在的毫秒数 也较为常用
year:年份表示
null
没有值,未知
注意:不要使用null进行运算,结果为null
三、数据库的字段属性
Unsigned:
无符号的整数
声明了该列不能声明为负数
zerofill:
0填充的
不足的位数使用0来填充,如:int(0), 5 --> 005
自增:
通常理解为自增,自动在上一条记录的基础上 +1(默认)
通常用来设计唯一的主键~index,必须是整数类型
可以自定义设计主键自增的起始值和步长
非空 Null not null:
假设设置为not null ,如果不给它赋值,就会报错
Null ,如果不填写值,默认就为null
默认:
设置默认的值
如:sex字段, 默认为男,如果不指定该列的值,则会有默认的值
拓展:非必须 阿里巴巴规范
/* 每一个表,都必须存在以下五个字段,表示一个记录存在意义 */
id 主键
version 乐观锁
is_delete 伪删除
gmt_create 创建时间
gmt_update 修改时间
四、创建数据库表
目标:使用sql在数据库中创建一张student表,表信息如下:
学号int 登录密码varchar(20) 姓名,性别varchar(2) 出生日期(datatime),家庭住址,email
CREATE TABLE IF NOT EXISTS `student`(
`id` INT 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 '性别',
`birthday` DATETIME DEFAULT NULL COMMENT '出生日期',
`address` VARCHAR(100) DEFAULT NULL COMMENT '家庭住址',
`email` VARCHAR(50) DEFAULT NULL COMMENT '邮箱',
PRIMARY KEY(`id`)
)ENGINE=INNODB DEFAULT CHARSET=utf8mb4
一般格式:
CREATE TABLE [IF NOT EXISTS] `表名`(
`字段名` 列类型 [属性] [索引] [注释],
`字段名` 列类型 [属性] [索引] [注释],
......
`字段名` 列类型 [属性] [索引] [注释]
)[表类型] [字符集设置] [注释]
注意:使用英文(),表的名称和字段尽量使用 `` 括起来
AUTO_INCREMENT 自增
字符串使用 '' 括起来
所有语句和面加 , (英文的),最后一个不用加
PRIMARY KEY 主键,一般一个表只有一个唯一的主键
五、修改删除表操作
-- 修改表名 ALTER TABLE 旧表名 RENAME AS 新表名
ALTER TABLE student RENAME AS student8-- 增加表字段
ALTER TABLE student8 ADD addresss VARCHAR(100) DEFAULT '四平路'-- 修改表的字段(包括重命名和修改约束)
ALTER TABLE student8 MODIFY age VARCHAR(10) -- 修改约束
ALTER TABLE student8 CHANGE age age1 INT(10) -- 修改字段名-- 删除表的字段
ALTER TABLE student8 DROP age1-- 删除表
DROP TABLE IF EXISTS student8