SQL——DDL关于数据库和表的操作(MySQL)

注意:以下操作均可以利用idea提供的图形化界面工具操作

一、DDL——关于数据库的操作

DDL英文全称是 Data Definition Language,数据定义语言,用来定义数据库对象(数据库、表)

1、查询

(1)查询所有数据库:show databases;

  (2)  查询当前数据库:select database();

其中information_schema 、mysql 、performance_schema 、sys 为系统安装完自带的数据库,是系统数据库。

2、创建

  (1)创建数据库:create database [ if not exists ]  数据库名;

在MySQL中数据库名字不可重复

例:create database db01;  创建数据库db01,但若db01已经存在则会报错

create  database if not exists db01;  若db01不存在,则创建数据库db01。即使存在,也不会报错。

3、使用

 (1)使用数据库:use 数据库名;

例:use db01;   当自己已经不知道在操作哪个数据库时,可用 select database(); 来确定。

4、删除

删除数据库:drop database [ if exists ]  数据库名;

例:drop database db02;  删除数据库db02,但若删除一个不存在数据库如db02,则会报错。

drop database if exists db02; 如果db02存在,则删除db02。即使不存在,也不会报错。

5、注意事项

上述语法中的database,也可以替换成 schema。如:create schema db01;

二、DDL——关于的操作

1、创建

 (1)语法

create table 表名(

            字段1   字段类型  [ 约束 ]  [ comment  字段1注释] ,

             ........

           字段n   字段类型  [ 约束 ]  [ comment  字段n注释] 

)[ comment 表注释]

注意:创建语句结束后要加“ ;”,每一个字段结束后要加“ ,”,最后一个字段无需添加。

 (2)约束

       概念:约束是作用于表中字段上的规则,用于限制存储在表中的数据。

       目的:保证数据库中数据的正确性、有效性、完整性。

约束描述关键字
非空约束限制该字段值不能为nullnot null
唯一约束保证字段的所有数据都是唯一的、不重复的unique
主键约束主键是一行数据的唯一标识,要求非空且唯一primary key (auto_increment自增)
默认约束保存数据时,如果未指定该字段的值,则采用默认值default
外键约束让两张表的数据建立连接,保证数据的一致性和完整性

foreign key

例:创建一个表格如下,要求:id为唯一标识、username为非空且唯一、name为非空、age无约束、gender默认值为男

create table tb_user(
   id int primary key auto_increment comment 'ID,唯一标识',
   username varchar(20) not null  unique comment '用户名',
   name varchar(10) not null comment '姓名',
   age int comment '年龄',
   gender char(1) default '男'comment '性别'  -- default后加默认值
) comment '用户表';

注:关于MySQL  varchar等数据类型整理相关链接如下:

https://download.csdn.net/download/2401_83190311/89686750?spm=1001.2014.3001.5503

2、查询

 (1)查询当前数据库下的所有表:show tables;

 (2)查询表结构:desc  表名;

 (3)查询建表语句:show create table  表名; ( 在最新idea中,可以右击所要查的表名,找Go to DDL或点击表名按空格)

3、修改

 (1)添加字段:alter table 表名 add 字段名 类型(长度) [ comment 注释 ] [ 约束 ];

例:为表tb_user 添加字段 qq  varchar(11) 

alter  table  tb_user add qq varchar(11) comment 'QQ';  

 (2)修改字段类型:alter table 表名  modify 字段名 新数据类型(长度);

例:修改表tb_user 字段类型 qq varchar(13)

alter table tb_user modify qq varchar(13) comment 'QQ';

 (3)修改字段名和字段类型:alter table 表名 change 旧字段名  新字段名  类型(长度)  [ comment 注释 ]  [ 约束 ];

例:修改tb_user 字段名qq为qq_num varchar(13)

alter  table tb_user change qq qq_num varchar(13) comment 'QQ';

 (4)删除字段:alter table  表名  drop column  字段名;

例:删除tb_user的qq_num 字段

alter table tb_user drop column qq_num;

 (5)修改表名:rename table  表名  to  新表名;

例:将tb_user表名修改为emp

rename table tb_user to user;

注:或在idea中右击所要修改的表,点击Modify  Table进行修改即可

4、删除

  删除表:drop table [ if exists ] 表名;

注:在删除表时,表中的全部数据也会被删除。

例:drop table tb_user; 删除表tb_user,若不存在则会报错

drop table if exists tb_user;  表tb_user  存在则删除,不存在也不报错。

5、注意事项

对表的创建、查询等以上所有操作要在对应数据库下运行;否则会出现以下报错

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值