创建表
-
语法格式:
create table 表名{ 字段名1 数据类型, 字段名2 数据类型, 字段名3 数据类型, ... };
-
常见数据类型
- int 整数型
- bigint 长整型
- float 浮点型
- char 定长字符串(255)
- varchar 可变长字符串
- date 日期类型
- BLOB 二进制大对象(存储图片,视频等流媒体信息)
- CLOB 字符大对象(存储较大文本,比如,可以存储4G的字符串)
- ......
-
char 和 varchar怎么选择?
- char:定长空间,超出报错
- archar:根据实际存储长度动态分配空间,超出报错
-
BLOB 和 CLOB
- 不能通过insert插入,要通过I/O流操作
- 不一定直接将大数据放入数据库
-
数据库中表的命名建议:t_XXX,tbl_XXX
create table t_student( no bigint, name varchar(255), sex char(1), classno varchar(255), birth char(10) );
insert语句
- 语法格式:insert into tb_name(字段1, 字段2, 字段3, ...) values(值1, 值2, 值3, ....);
- 字段的数量和值的数量要一致
- 执行成功,数据表中必定新增一条记录
- 省略字段名时,values里对值的数量和位置都有限制
- 可以一次插入多条记录
表的复制以及批量插入
- 表的复制
- 语法:create table tb_name as select 语句;
- 将查询结果作为一张新表并创建出来
- 语法:create table tb_name as select 语句;
- 批量插入
- 语法:insert into tb_name select 语句;
- 将查询出的数据重新插入表中
- 有基本的字段数量的对应限制(常识)
- 语法:insert into tb_name select 语句;
修改数据
- 语法:update tb_name set 字段名1=值1, 字段名2=值2... where 条件;
- 没有条件:整张表的数据全部更新
- 各修改之间用逗号隔开
删除表中数据:delete
- 语法:delete from tb_name where 条件;
- 没有条件,全部删除
- delete的效率比较低:
- 没有释放数据的真实存储空间
- 好比将表格里的数据拿橡皮擦擦除
- 数据表的表格(物理存储空间)还存在,回滚还能回来
删除大表中的数据:truncate
- 语法:truncate table tb_name;
- 原理:
- 表截断,将表头留下,后面的数据不要了,格子也不要了(存储数据的空间释放)
- 不可回滚,永久丢失
- 无法恢复数据,删前问清楚
对于表结构的更改
- 修改表结构,就是对之前的设计进行了否定
- 很少,也可借助工具完成
CRUD
- create:增加
- retrieve:检索
- update:更新
- delete:删除
相关文章
暂无评论...