DDL 数据定义语言 针对库和表 指定位置增删改查

DDL 数据定义语言

      针对库和表进行定义:

    库:

      建库定义:create database oldguo charset utf8mb4;

  改库定义:

      create database oldguo1;

  先创建一个用户

  show create database oldguo1;

  查看一下 默认是拉丁文字符集

  alter database oldguo1 charset utf8mb4;

  更改为中文字符集

  删库定义:drop database oldguo1;


        表:

    建表定义:

建表建库规范:

1、库名 表名必须是小写字母

              为什么 在Windows中创建数据库对于大小写区分不敏感  拿到linux中严格区分大小写 就不行了

              2、不能以数字开头

  3、不能是特殊符号

  4、不能用内置函数名

  5、名字和业务功能有关

手工建表:

create table oldguo(id int not null primary key AUTO_INCREMENT comment '学号' , 

name varchar(255) not null comment '姓名',

age tinyint unsigned not null default 0 comment '年龄',

gender enum('m','f','n') not null default 'n' comment '性别' )charset=utf8mb4 engine=innodb;

  字符集=utf8mb4  存储引擎=innodb

改表定义:

1.修改表结构:

添加列:在上表中添加手机号列15933491595

alter table oldguo add telnum char(11) not null unique comment '手机号';

练习:alter  table oldguo add state tinyint unsigend not null default 1 comment '状态信息';

扩展 指定位置  添加列

在name后边添加qq列varchar(255):

alter  table oldguo add qq varchar(255) not null unique comment 'qq号码' after name;

在name前边添加wechet列varchar(255):

alter table oldguo add wechet varchar(255) not null unique comment 'wechet号码' after id;

在首列上添加学号列 sid

alter table oldguo add sid varchar(255) not null unique comment '学生号' first;

修改已有列name的属性

只想改属性 用modify 

alter table oldguo modify name varchar(128) not null;

将gender改为gg  数据类型改为char(1)数据类型

这时就要用到change   包含modify 

alter table oldguo change gender gg char(1) not null default 'n';

alter table oldguo modify name varchar(128) not null;

切换库(类似cd切换目录):use oldboy;

查看列:desc oldguo;

查看建表语句:show create table oldguo;

创建一个相同表结构的空表:

create table oguo like oldguo;

删表定义:  删除列:alter table oldguo drop  state;

                (高危命令)

你可能感兴趣的:(DDL 数据定义语言 针对库和表 指定位置增删改查)