MySQL数据定义(DDL)

本文档详细介绍了数据库的定义、创建、删除、切换操作,以及数据表的查看、结构分析、创建、修改、增删等关键步骤,包括示例和注意事项。涵盖了SQL基础和表设计的全面内容。

数据库定义语句

数据库

查看据库

show databases;

创建数据库

# 语法
CREATE DATABASE [IF NOT EXISTS] <数据库名>
[[DEFAULT] CHARACTER SET <字符集名>] 
[[DEFAULT] COLLATE <校对规则名>];

示例:

create database db1 
default charset utf8
default collate utf8_general_ci;

ci是 case insensitive, 即大小写不敏感。

删除数据库

drop database db1;

切换数据库

use db2;

数据表

查看当前数据库中的所有表

show tables;

查看数据表结构

desc tab_name;

查看数据表的创建信息

show create table tab_name;
建表
# 语法
CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name
    [(create_definition,...)]
    [table_options] [select_statement]


create table [if not exists] 表格名称 (
列名称  类型名称  comment 注释说明,
列名称2 ……
) [default charset 'utf8'];

示例:

create table person(
     id int auto_increment primary key comment '用户编号',
     name varchar(20) not null comment '用户姓名',
     age int comment '用户年龄',
     addtime date comment '添加时间'
)
删除表
drop table [if exists] tab_name;
修改表

修改表名

# 第一种
alter table old_tablename rename to new_tablename;
#第二种
RENAME TABLE old_tablename TO new_tablename;

修改表的列名称及类型

# change修改字段名及字段类型,修改name字段,字段名为nickname,字段类型为varchar(50)
alter table tab_name change column old_column new_column varchar(50);

修改表的字段类型

# modify用于修改字段类型
alter table tab_name modify column old_column INT NOT NULL;

注意修改类型应该谨慎,因为类型之间数据需要转换,可能会导致数据出错或者丢失,如果要将同样类型的数据字段增加长度是没问题的,也是经常使用的,但是减小长度可能会导致数据丢失。

表删除列

# 删除名称为name的一列
alter table tab_name drop column name; 

表增加列

# 增加一列
alter table tab_name add column phone varchar(11); 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值