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
- 修改表中列的数据类型或长度,关键字MODYFI
- 修改列名称,关键字CHANGE
- 删除列,关键字DROP