DDL操作数据库
创建数据库
-
点击Navicat里的新建查询。
-
sql语句中注释为:
- 单行注释:# 注释
- – 注释
- 多行注释:/*多行
- 注释*/
-
命令:
- create database 数据库名; #创建指定名称的数据库
- create database 数据库名 character set 字符集; # 创建指定名称的数据库,并指定字符集(一般为utf8)
- use 数据库名; # 切换数据库
- select database(); #查询当前所使用的的数据库*
- show databases; # 查询mysql中有哪些数据库
- show create database db1; # 查看数据库定义信息
修改数据库
- 修改数据库字符集
- 命令:
- alter database 数据库名 character set 字符集; #修改指定数据库的字符集
- 命令:
删除数据库
- 命令 :
- drop database 数据库名; # 从mysql中永久的删除某个数据库
DDL操作数据表
- 一个数据库中有n个表,表中又有字段(列),在建表的是就需要定义好字段(指定字段属性------>字段属性类型+字段长度等)
创建表
-
语法格式:
-
create table 表名( 字段名称1 字段类型(长度) 字段名称2 字段类型 注:最后一列不要加逗号 );
-
/*需求: 表名:category 表中字段: 分类id:cid,整型 分类名称:cname,为字符型类型,指定长度为20 */ create table category( -- 定义字段信息 cid int, cname varchar(20) );
/* 需求:创建测试表 表名:test1 表中字段: 测试id:tid,整型 测试时间:tdate,为年月日的日期类型 */ create table test1( tid int, tdate DATE );
/* 需求:快速创建一个表结构相同的表(复制表结构,不复制数据) 语法格式: Create table 新标名 like 旧表名; */ create table test2 like test1; -- 查看表结构 desc test2;
查询表
-
查看当前数据库中有哪些数据表
-
show tables;
-
查看当前数据表的结构
-
desc test2;
-
查看创建表的sql语句
-
show create table test2;
删除表
-- 删除数据库/表用drop
drop table test1;
-- 判断存在表再删除
drop table if exists test1;
修改表
-
修改表名
-
rename table 旧表名 to 新表名
rename table category to category1 #将表category改为category1
-
-
向表中添加列,关键字ADD
-
语法格式:
alter table 表名 add 字段名称 字段类型
-
alter table category add cdesc varchar(20); #为表添加一个新的字段为 分类描述 cdesc varchar(20)
-
-
修改表中列的数据类型或长度,关键字MODYFI
-
语法格式:
-
alter table 表名 modify 字段名称 字段类型
-
alter table category1 MODIFY cdesc varchar(50); #对分类表的描述字段进行修改,类型varchar(50)
-
-
修改列名称,关键字CHANGE
-
语法格式:
-
alter table 表名 change 旧列名 新列名 类型(长度)
alter table category change adesc description varchar(30); #对分类表中adesc字段进行更换,更换为description varchar(30)
-
-
删除列,关键字DROP
-
语法格式:
-
alter table 表名 drop 列名;
-
alter table category1 drop description;# 删除分类表中description这列
-