操作数据库:CRUD
- C(create) 创建
*数据库创建出来默认字符集为utf8
如果要更改字符集就
Create database 名称 character set gbk(字符集)
*创建数据库:create database 名称
*先检查是否有该数据库在创建
create database if not exists 名称
创建db4数据库,判断是否存在,并指定字符集为gbk
Create database if not exists db4 character set gbk
- R(retrieve) 查询
*查询所有数据库名称:show databases
*查询某个数据库的字符集,查询某个数据库的创建语句
Show create database 数据库名称
- U(update) 修改
修改数据库的字符集
*alter database 数据库名称 character set 字符集名称
- D(delete)删除
*删除数据库
*drop database 数据库名称
*判断数据库的是否存在再删除
*drop database if exists 数据库名称(与创建十分类似)
- 使用数据库
*查询当前正在使用的数据库名称
*select database();
*使用数据库
*use 数据库名称
操作表
*先use 数据库名称才可以进去操作表
复制表就是 create table stu(复制的) like student(存在的表)
1.创建
Create table 表名(
列名1 数据类型1,
列名2 数据类型2,
列名3 数据类型3,
……………
列名n 数据类型n
);
*最后一列不需要加(,)
*数据库的数据类型
1.int :整数类型
eg: age int,
2 double :小数类型
Eg: score double(5,2)
5表示几位数(999.99) 2表示几位小数(0.99)
3 data 日期,只包含年月日,yyyy-MM-dd
4 datetime:日期,包含年月日时分秒
yyyy-MM-dd HH:mm:ss
5 timestamp 时间错类型 包含年月日时分秒
yyyy-MM-dd HH:mm:ss
*如果不给这个字段赋值,或赋值为null,就默认使用当前的系统时间,自动赋值
6 varchar :字符串
* name varchar(20):最大20个字符
* zhangtao 8个字符 张涛 2个字符
创建表
create table student(
id int,
name varchar(20),
age int
);
2.查询
先use数据库名称才可以进行下面的操作
*查询某个数据库中所有的表的名称
*show tables
*查询表结构
*desc 表名
3.修改
*修改表名
Alter table 表名 rename 新的表名
*修改表的字符集
Alter table 表名 character set 字符集名称
*添加一列
Alter table 表名 add 列名 数据类型
*修改类名称 类型
Alter table 表名 change 列名 改完后的列名 新数据类型
*删除列
4.删除
*drop table 表名
*drop table if exists 表名(检查是否有再删)
使用ddl建的表
dml
1.添加数据
*语法 :
*insert into 表名(列名1,列名2,……..列名n)values(值1,值2,…值n)
*注意:
1.列名和值要一一对应
2.如果表名后,不写列名,就要给所有列添加值
Insert into 表名 values(值1,值2,…值n);