DDL

DDL:操作数据库,表(建议使用大写)

数据定义语言,它是用来定义和管理数据对象的。

数据定义语言DDL可以用来创建数据库中的各种对象:数据库、数据表、视图、索引等。

create database:创建数据库

create table : 创建数据表

create view : 创建视图

create index:创建索引

1、操作数据库:CRUD

​ 1、C(Create):创建

create database 数据库名称;
create database if not exists 数据库名称;		/* 先判断是否存在,如果不存在同名数据库,我就创建。如果存在也不会报错,也不会创建数据库。
 */
  create database if not exists 数据库名称 character set 字符集;
  /*创建数据库,判断是否存在,并制定字符集*/

​ 2、R(Retrieve):查询

show databases;		-- 查询所有数据库的名称

show create database 数据库名称;	-- 查询每个数据库的字符集:查询某个数据库的创建语句

​ 3、U(Update):修改

alter database 数据库名称 character set 字符集;	/*修改数据库的字符集*/

​ 4、D(Delete):删除

drop database 数据库名称;
drop database if exists 数据库名称; -- 判断数据库存在,存在再删除
-- 切记不要删除系统默认数据库

​ 5、使用数据库

select database();	-- 查询当前正在使用的数据库名称
use 数据库名称;	-- 使用数据库(进入数据库)
-- 只有进入了数据库,才能在当前数据库中创建数据表等数据库对象

2、操作表

1)、C(Create):创建

​ 1、语法:

create table 表名(

	列名1 数据类型1,

	列名2 数据类型2,

	.......

	列名n 数据类型n

	);
-- 注意:最后一列,不需要加逗号


/*
*数据类型:
*	1、int :整数类型
*		age int,
*	2、double:小数类型
*		score double(5,2),		-- 这个小数最多5位,小数点后面保留2位小数
*	3、date:日期,只包含年月日的日期,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个字符
*		例如:zhangsan 8个字符	张三 2个字符
*/


create table student(
		id int,
    	name varchar(32),
    	age int,
    	score double(4,1),
    	birthday date,
    	insert_time timestamp
);

-- 创建前,先use 数据库名称
-- 创建完成后用desc 表的名称可以查看新创建的表

-- 复制表
create table 表名 like 被复制的表名;

2)、R(Retrieve):查询
show tables;	-- 查询某个数据库中所有的表名称
desc 表名;	-- 查询表结构
SHOW COLUMNS FROM 表名;  -- 查询表结构
3)、U(Update):修改
-- 1 修改表名
alter table 表名 rename to 新的表名;

-- 2 修改表的字符集
alter table 表名 character set 字符集名称;

-- 3 添加一列
alter table 表名 add 列名 数据类型;
 alter table stu add gender varchar(10);
 
-- 4 修改列的名称 类型
alter table 表名 change 列名 新列名 新数据类型;
alter table 表名 modify 列名 新数据类型;

alter table student change 姓名 name varchar(30);
alter table student modify 姓名 varchar(30);
-- 5 删除列
alter table 表名 drop 列名;
4)、D(Delete):删除
drop table  if exists 表名;
drop table 表名;
posted @ 2022-04-27 15:17  宣哲  阅读(700)  评论(0编辑  收藏  举报