目录
DDL:
1、数据库的创建:
2、由于重复创建同名数据库会报错
3、注意如果默认字符集为Latin1,其不支持中文,所以改为:
数据库的创建:
数据表的创建
属性的数据类型
1、数值类型:
2、字符串类型:
3、常用的时间和日期类型:
数据表的删除与修改
1、删除数据表
2、修改表名称
3、查看表结构
修改表结构:
1、增加表中列
2、修改表中列的数据类型
3、修改表中列的名称
4、删除表中列
DDL:
数据定义语言DDL可以用来创建数据库中的各种对象:数据库、数据表、视图、索引等。
1、create database:
创建数据库
2、create table:
创建数据表
3、create view:
创建视图
4、create index:
创建索引
1、数据库的创建:
基本格式:create database<数据库名>
2、由于重复创建同名数据库会报错
所以一般都使用:create database [if not exists] <数据库名>;
如果不存在“数据库名”就创建数据库。
3、注意如果默认字符集为Latin1,其不支持中文,所以改为:
create database<数据库名> [default charset utf-8];
创建数据库“数据库名”,并设置其默认字符集为utf-8;
数据库的创建:
create database <数据库名>;
##数据库的创建
create database test;
当数据库创建成功后,会在左边的项目中显示出来,如果没显示,请点击鼠标右键,点击refresh all(刷新所有)
因为SQL不允许创建同名的数据库,所以在创建数据库前可以先进行判断,如果是同名则创建失败,如果不是则创建成功
如果要创建的是同名的数据库,则Mysql会报错:database exists(数据库已存在)
-- 因为SQL不允许创建同名的数据库,所以在创建数据库前可以先进行判断,如果是同名则创建失败,如果不是则创建成功
-- 如果要创建的是同名的数据库,则Mysql会报错:database exists(数据库已存在)
create database if not exists test;
数据库创建成功之后,可以通过左栏,查看该数据库的信息以及更改数据库的字符集
第一个按钮:查看数据库的信息
第二个按钮:更改数据库的字符集,还不能更改名
因为如果字符集不是utf-8,则数据库不能使用中文命名,所以在创建数据库的时候可以顺便设置字符集utf8
create database test default charset utf8;
-- 创建一个数据库,名称为test,并设置字符集为utf8
以下命令将不再提供演示,请自行尝试
1、查看数据库
show databases;
2、删除数据库
数据库一旦被删除,数据将难以恢复
drop database <数据库名>;
3、使用数据库(进入数据库)
use <数据库名>;
只有进入了数据库才能操作数据库中的数据表等数据库对象
#查看当前数据库中所有的数据库
show databases;
#数据库的删除
drop database test;
#数据库的使用
create database db_1;
use db_1;-- 使用数据库(进入数据库)
-- 只有进入了数据库,才能在当前数据库中创建数据表等数据库对象
数据表的创建
数据表创建的基本格式:
create table [if not exists] <表格名称>
(
属性名1 属性类型 [约束...],
属性名2 属性类型 [约束...],
........
属性名n 属性类型 [约束...]
)[engine innodb] [charset=utf8];
#创建表并设置它的属性名、数据类型、存储引擎和字符集
#5.7版本需要加上char set=utf8
create database test;
#数据表的创建可以理解成定义一个结构体,不过里面的数据定义方式是和C相反的,这里是数据类型写在后面
#这里的圆括号表示数据的大小,等同于c语言中的方括号, 只不过SQL采用的是圆括号
create table people(
p_id int,
p_name char(20),
p_gender char(4),
p_age int
);
属性的数据类型
1、数值类型:
所谓的自适应就是存多少数据,自动调整占多大的内存,也就是说没有固定的空间,这样就不会浪费空间了
2、字符串类型:
3、常用的时间和日期类型:
数据表的删除与修改
1、删除数据表
drop table<数据表名>;
2、修改表名称
rename table <表名> to <新表名>;
3、查看表结构
1、desc<表名>
2、show columns from <表名>;
-- 删除数据表
drop table <数据表名>;
-- 修改表名称
rename table <表名> to <新表名>;
-- 查看表结构(两种方式都行)
desc <表名>
show columns from <表名>;
修改表结构:
1、增加表中列
alter table <表名> add <属性列名> <属性类型> [约束];
2、修改表中列的数据类型
alter table <表名> modify column <属性列名> <类型> [约束];
3、修改表中列的名称
alter table <表名> change column <属性列名>
<修改后的属性列名> <类型> [约束];
4、删除表中列
alter table <表名> drop column <属性列名>;
#增加表中列
alter table people_tb add p_birthday date;
#修改表中列的数据类型
alter table people_tb modify column p_name varchar(30);
#修改表中列的名称
alter table people_tb change column p_birthday 出生年月 date;
-- 一般很少做数据表结构的修改操作,能够在创建数据库时给定好的,就不要在创建之后修改
#删除表中列
alter table people_tb drop column p_age;