操作数据库 > 操作数据库表 > 操作数据库中表的数据
1.创建数据库
create datebase 名称;
2.删除数据库
drop datebase 名称;
3.使用数据库
-- tab键的上面,如果你的表名或者字段名是一个特殊字符,就需要带`` usE `schoo1`
4.查看数据库
show datebases -- 查看所有的数据库
unsigned:
zerofill
0填充的
不足的位数,用0填充 int(3) , 5 , 005
自增:
非空 NULL not null
默认:
每一个表都必须存在以下五个字段
id 主键
‘version’ 乐观锁
is_delete 伪删除
gmt_create 创建时间
gmt_update 修改时间
-- 目标:创建一个school数据库 -- 创建学生表(列,字段) ,使用sql创建 -- 学号 int , 登陆密码 verchar(20) , 性别 verchar(2) , 出生日期 datetime ,家庭住址 , email -- 注意点,使用英文(),表的名称和字段尽量使用·括起来 -- AUTO INCREMENT 自增 -- 字符串使用单引号括起来! -- 所有的语句后面加,(英文的) -- primary key 主键,一般一个表只有唯一一个主键 CREATE TABLE IF NOT EXISTS `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'性别', `birthday` DATETIME DEFAULT NULL COMMENT '出生日期', `address` VARCHAR (100) DEFAULT NULL COMMENT '家庭住址', `email` VARCHAR (50) DEFAULT NULL COMMENT '邮箱', PRIMARY KEY (`id`) )ENGINE=NNODB DEFAULT CHARSET=utf8
格式
create table【if not exists】 `表名`( `字段名` 列类型 [属性] [索引] [注释], `字段名` 列类型 [属性] [索引] [注释], `字段名` 列类型 [属性] [索引] [注释], )
常见的命令
SHOW CREATE DATABASE school -- 查看创建数据库的语句 SHOW CREATE TABLE student -- 查看student数据表的定义语句 DESC student -- 显示表的结构
-- 关于数据库的引擎 /* INNODB 默认使用 MYISAM 早先年使用 */
MYISAM | INNODB | |
---|---|---|
事务支持 | 不支持 | 支持 |
数据行锁定 | 不支持 | 支持 |
外键约束 | 不支持 | 支持 |
全文索引 | 支持 | 不支持 |
表空间大小 | 较小 | 较大,约为倍 |
常规使用操作:
MySQL引擎在物理文件上的区别
lnnoDB在数据库表中只有一个*.frm文件,以及上级目录下的 ibdata1文件.
MYISAM对应文件:
设置数据库表的字符集编码
CHARSET=utf8
不设置,会是mysql默认的字符集编码 (不支持中文)
修改表名 ALTER TABLE 旧名 RENAME AS 新名
ALTER TABLE teacher RENAME AS teacher1
添加表的字段 ALTER TABLE 表名 ADD 字段名 列属性
ALTER TABLE teacher1 ADD age INT(10)
修改表的字段(重命名,修改约束)
-- ALTER TABLE 表名 MODIFY 字段名 列属性【】 ALTER TABLE teacher1 MODIFY age VARCHAR(11) -- 修改约束 --ALTER TABLE 表名 CHANGE 旧名字 新名字 列属性【】 ALTER TABLE teacher1 CHANGE age age1 INT(11) -- 字段重命名
删除表的字段
--ALTER TABLE 表名 DROP 字段名 ALTER TABLE teacher1 DROP age
删除表
-- DROP TABLE IF EXISTS 表名 DROP TABLE IF EXISTS teacher1