表
创建表
建表语句的语法格式:
create table 表名(
字段名1 数据类型,
字段名2 数据类型,
字段名3 数据类型,
··· ···
);
mysql中常见的数据类型
int 整数型(java中的int)
bigint 长整型(Java中的long)
float 浮点型(Java中的float double)
char 定长字符串(string)
varchar 可变长字符串(stringbuffer/stringbuilder)
data 日期类型(对应Java中java.sql.Data类型)
BLOB 二进制大对象(存储图片、视频等流媒体信息)Binary Large OBject(对应Java中object)
CLOB 字符大对象(存储较大文本,比如,可以存储4G的字符串)Character Large OBject(对应Java中object)
char和varchar怎么选择
在实际的开发中,当某个字段中的数据长度不发生改变的时候,是定长的,例如:性别,生日等都是采用char
当一个字段的数据长度不确定,例如:简介、姓名等都是采用varchar
表名在数据库中一般建议以:t_ 或者tbl_开始
create创建学生表
学生信息表包括:学号(bigint)、姓名(varchar)、性别(char)、班级编号(varchar)、生日(char)
create table t_student(
no bigint,
name varchar(255),
sex char(1),
classno varchar(255),
birth char(10)
);

insert语句插入数据
语法格式:
insert into 表名(字段名1,字段名2,字段名3,···)values(值1,值2,值3,···)
字段的数量要和值的数量相同,并且数据类型要对应相同
字段+values插入

insert into t_student(no,name,sex,classno,birth) values(1,'zhangsan','1','gasan1ban','2000-01-01');

insert into t_student (name) values ('lisi');//除name这个字段外,剩下的字段自动补NULL

drop table if exists t_student;//当这个表存在的话删除

create table t_student(
no bigint,
name varchar(255),
sex char(1) default 1,
classno varchar(255),
birth char(10)
);

注意:
- 当一条insert语句执行成功之后,表格当中必然会多一行记录
- 即是多的这一行记录的那个中的某些字段是NULL,后期也没有办法在执行
- insert语句插入了数据,只能使用update进行更新了
values插入
//字段可以省略不写,但后面的values对数量和顺序都有要求
insert into t_student values(1,'jack','0','gaosan','1999-08-08');


一次插入多行数据
insert into t_student
(no,name,sex,classno,birth)
values
(3,'rose','1','gaoyi','2002-03-03'),(4,'laotie','1','gaoyi','2003-05-05');

表的复制
语法:
create table 表名 as select语句;
将查询结果当做表创建出来
将查询结果插入到一张表中
insert into dept1 select * from dept;

修改数据:update
语法格式:
update 表名 set 字段名1=值1,字段名2=值2,··· where 条件;
没有整张表数据全部更新
将部门10的loc修改为shangbai,将部门名称修改为renshibu
update dept1 set loc = 'shangbai',dname = ' renshibu' where deptno = 10;

更新所有记录
update dept1 set loc = 'x',dname='y';

删除数据delete
语法格式:
delete from 表名 where 条件;
没有条件的全部删除
删除10部门数据
delete from dept1 where deptno = 10;

删除所有记录
delete from dept1;

怎么删除大表(重点)
truncate table 表名;//表被截断,不可回滚,永久丢失
- DQL(select) DML(insert delete update) DDL(create drop alter)
- DQL(select) DML(insert delete update)写入java程序中
- 增删查改有一个术语:CRUD操作
create(增)retrieve(检索) update(修改)delete(删除)