mysql 数据库操作

DDL数据库操作

目录

DDL数据库操作

查询所有的数据库

1.查询当前数据库

2.创建数据库

3.删除数据库

4.使用数据库

2.DDL表操作

1.查询当前数据库所有表

2.查询表结构

3.查询指定表的建表语法句

3.DDL表操作-数据类型

数值类型:

字符串类型:

日期类型:

4.DDL - 表操作 - 修改

添加字段:

修改数据类型:

修改字段名和字段类型:

删除字段:

删除表

删除指定表,并重新创建该表


查询所有的数据库

show  databases;

1.查询当前数据库

select database();

2.创建数据库

create database  数据库名字;

create database if not exists 数据库名字; [如果不存在这个数据库就创建,如果存在就不执行]

3.删除数据库

drop database 数据库名字;

drop databaste if exists 数据库名字;[如果不存在这个数据库就删除,如果存在就不执行] 

4.使用数据库

use 数据库名字;

2.DDL表操作

1.查询当前数据库所有表

show tables;

2.查询表结构

desc 表名;

3.查询指定表的建表语法句

show create table 表名;

3.DDL表操作-数据类型

mysql中的数据类型有很多,主要分为三类:数值类型,字符串类型,日期时间类型。

数值类型:

类型大小有符号(SIGNED)无符号(UNSIGNED)描述
tinyint1 byte(-128,127)(0,255)小整数值
smalltnt2 bytes(-32768,32767)(0,65535)大整数值
mediumtnt3 bytes(-8388608,8388607)(0,16777215)大整数值
int或integer4 bytes(-2147483648,2147483647)(0,2^64-1)大整数值
BIGINT8 bytes//极大整数值
FLOAT4 bytes//单精度浮点数值
DOUBLE8 bytes//双精度浮点数值

字符串类型:

类型大小描述
char0-255 bytes定长字符串
varchar0-65535 bytes变长字符串
tinyblob0 -255 bytes不超过255个字符的二进制数据
tinytext0-255 bytes短文本字符串
blob0-65 535 bytes二进制形式的长文本数据
text长文本数据
mediumblob二进制形式的中等长度文本数据
mediumtext中等长度文本数据
longblob二进制形式的极大文本数据
longtext极大文本数据

日期类型:

类型大小范围格式描述
DATE31000-01-01 至 9999-12-31YYYY-MM-DD日期值
TIME3-838:59:59 至 838:59:59HH:MM:SS时间值
YEAR11901 至 2155YYYY年份值
DATETIME81000 -01-01 00:00:00 至 ~/混合日期和时间值
TIMESTAMP41970 -01-01 00:00:00:00 至2038/时间戳

案例:设计一张员工信息表,要求如下:

1.编号(纯数字)

2.员工工号(字符串类型,长度不超过10位)

3.员工姓名(字符串类型,长度不超过10位)

4.性别(男/女,存储一个汉字)

5.年龄(正常人年龄,不可能为负数)

6.身份证号(18位,身份证号有X字符)

7.入职时间(取年月日即可)

mysql> create table emp(
    -> id int comment '编号',
    -> workon varchar(10) comment'工号',
    -> name varchar(10) comment'姓名',
    -> gender char(1)  comment'性别',
    -> age tinyint unsigned comment '年龄',
    -> idcard char(18) comment '身份证号',
    -> entrydate date comment '入职时间'
    -> ) comment '员工信息表' ;
Query OK, 0 rows affected (0.02 sec)

4.DDL - 表操作 - 修改

添加字段:

ALTER TABLE 表名 ADD 字段名 类型(长度)[COMMENT 注释] [约束] ;

案例:为emp表增加一个新的字段“昵称”为nickname,类型为varchar(20)

mysql> alter table employee add nickname varchar(20) comment '昵称';
Query OK, 0 rows affected (0.04 sec)
Records: 0  Duplicates: 0  Warnings: 0

修改数据类型:

ALTER TABLE 表名 MODIFY 字段名 新数据类型(长度);

修改字段名和字段类型:

ALTER TABLE 表明 CHANGE 旧字段名 新字段名 类型(长度) [COMMENT 注释] [约束];

案例:将emp表的nickname字段修改为username,类型为varchar(30)

mysql> alter table employee change nickname username varchar(30) comment '用户名';
Query OK, 0 rows affected (0.00 sec)
Records: 0  Duplicates: 0  Warnings: 0

删除字段:

ALTER TABLE 表名 DROP 字段名;

案例:将emp表的字段username删除

mysql> alter table employee drop username;
Query OK, 0 rows affected (0.01 sec)
Records: 0  Duplicates: 0  Warnings: 0

修改表名

ALTER TABLE 表名 RENAME TO 新表名;

案例:将emp表名修改为 employee

mysql> alter table emp rename employee;
Query OK, 0 rows affected (0.01 sec)

删除表

DROP TABLE [ IF EXISTS] 表名;

删除指定表,并重新创建该表

TRUNCATE TABLE 表名;

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

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值