mysql-数据库DDL操作

本文介绍了如何在MySQL中进行DDL操作,包括创建、修改和删除数据库,创建和管理数据表,以及详细说明了各种数据类型。涵盖了创建数据库、数据表结构定义、修改表结构如添加、修改、删除字段等关键步骤。

之前已经学习了安装mysql服务端还有进行了一些关于数据库安全的设置,现在开始学习创建数据库和数据表以及进行修改。

MySQL的DDL(Data Definition Language)语句用于定义或更改数据库结构,包括创建、修改或删除表、视图、索引等数据库对象。sql语句以关键字和数据库或者数据表格式执行,常见的关键字:SHOW、USE、DROP、DELETE、SELECT等等,以;(分号)结尾,否则可能会报错。

数据库管理系统-->数据库-->数据表-->数据字段-->数据记录。

一、创建数据库

# 登陆数据库
mysql -uroot -p

#
 查看所有数据库
SHOW DATABASES;
mysql                      # 系统数据库(慎动)
sys                        # 系统数据库


#
 use关键字+数据库名 ,切换数据库
USE mysql;

#
 创建数据库 database + 数据库名称 ,编码utf8
CREATE DATABASE database_name
    CHARACTER SET utf8mb4
    COLLATE utf8mb4_general_ci;

#
 只有在数据库不存在时才进行创建
CREATE database if not exists 数据库名称;

#
 删除数据库,一定要小心再小心。
DROP database 数据库名;

#
 修改数据库编码类型为utf8
ALTER database 数据库名 character set utf8;

二、常见的数据类型

创建数据表,在数据表中定义字段的类型与长度。

数据类型定义示例
int整型int(10)
double浮点型double(5,2)表示最多5位,2位小数,最大999.99
decimal浮点型用在关于金额的方面,不会出现精度缺失
char固定长度字符串char(255),最大char(255),char(100),不足会补足100
varchar可变长字符串varchar(65535),用一个字节来记录
text字符串超大类型,mysql独有
date日期类型格式为:yyyy-MM-dd
time时间类型格式为:hhmmss
timestamp时间戳类型格式为:日期+时间

三、数据表操作

3.1 创建数据表表

CREATE TABLE (IF NOT EXISTS) 表名(
列名 列类型,
列名 列类型,
);

3.2 查看数据表

SHOW TABLES;               # 查看当前数据库中的所有表
SHOW CREATE TABLE 表名;    # 查看指定表的创建语句
DESC 表名;                 # 查看表结构:
SHOW FULL COLUMNS FROM employee; # 查看所有字段的信息包括注释及权限

3.3 删除数据表

DROP TABLE 表名;           # 删除表

四、修改数据库

修改数据表包括,修改表名、修改字段、修改行列等等。

  • 修改表之添加列:
ALTER TABLE 表名
ADD(
列名 列类型,
列名 列类型
);
# 示例
ALTER TABLE table_name ADD column_name datatype;
# table_name是要添加列的表名,column_name是新列的名称,datatype是新列的数据类型。
# 使用ADD语句还可以添加默认值、约束等,例如:
ALTER TABLE table_name
ADD column_name datatype DEFAULT default_value,
ADD CONSTRAINT constraint_name PRIMARY KEY (column_name);

#
 在添加列时,还可以指定列的位置。可以使用AFTER关键字指定新列应该出现在哪一列之后,或者使用FIRST关键字将新列放在第一列位置。
ALTER TABLE table_name
ADD column_name datatype AFTER existing_column;
# 指定位置
ALTER TABLE table_name
ADD column_name datatype FIRST;

#
 增加主键设置
ALTER TABLE employee ADD PRIMARY KEY(id);

#
 删除主键
1.使用ALTER TABLE语句
ALTER TABLE 表名 DROP PRIMARY KEY;
2.使用DROP INDEX语句
DROP INDEX 主键名 ON 表名;

#
 设置自动增长
ALTER TABLE employee MODIFY id int auto_increment;
  • 修改表之修改列类型
# MODIFY是MySQL的一个ALTER TABLE语句的关键字,用于修改表中已有列的数据类型、约束等。MODIFY语句可以修改列的数据类型、默认值、约束等。
ALTER TABLE 表名
MODIFY 列名 列新的类型;
# 示例
ALTER TABLE table_name MODIFY column_name new_datatype;
# 还可以修改列的默认值
ALTER TABLE table_name MODIFY column_name DEFAULT default_value;
# 定义约束条件
ALTER TABLE table_name MODIFY column_name datatype NOT NULL;
  • 修改表之修改列名
# CHANGE是MySQL的一个ALTER TABLE语句的关键字,用于修改表中已有列的名称、数据类型、位置、约束等。CHANGE语句可以修改列的名称、数据类型、位置、约束等。
ALTER TABLE 表名
CHANGE 原列名 新列名 列类型;
# 示例
ALTER TABLE table_name CHANGE old_column_name new_column_name new_datatype;
# 使用AFTER或者FIRST修改位置
ALTER TABLE table_name CHANGE column_name new_column_name datatype FIRST[AFTER] column_name ;
  • 修改表之删除列
# DROP是MySQL的一个关键字,用于删除数据库、表、列等对象。
ALTER TABLE 表名
DROP 列名;
# 示例
# 删除数据库
DROP DATABASE database_name;
# 删除表
DROP TABLE table_name;
# 删除表中的某一列
ALTER TABLE table_name DROP COLUMN column_name;
  • 修改表之修改表名称
# RENAME是MySQL的一个关键字,用于重命名数据库、表、列等对象。
ALTER TABLE 表名
RENAME TO 新表名;
# 示例
ALTER DATABASE old_database_name RENAME TO new_database_name;
# 重命名列
ALTER TABLE table_name CHANGE old_column_name new_column_name datatype;

总结

DDL操作

  • 创建数据库

  • 删除数据库

  • 创建数据表

  • 删除数据表

  • 修改数据表

  • 添加字段

常见数据类型有(int char varchar date time timestramp...)。

本文由 mdnice 多平台发布

MySQL是一种开源的关系型数据库管理系统,它支持多种操作系统,并且广泛应用于Web应用程序的后端数据存储。MySQLDDL(Data Definition Language)是用于定义和管理数据库结构的基础操作。 以下是MySQLDDL的基础操作: 1. 创建数据库:使用CREATE DATABASE语句可以创建一个新的数据库。例如,CREATE DATABASE mydatabase; 2. 删除数据库:使用DROP DATABASE语句可以删除一个已存在的数据库。例如,DROP DATABASE mydatabase; 3. 创建表:使用CREATE TABLE语句可以创建一个新的数据表。在CREATE TABLE语句中,需要指定表名和表的列及其属性。例如,CREATE TABLE mytable (id INT, name VARCHAR(50)); 4. 删除表:使用DROP TABLE语句可以删除一个已存在的数据表。例如,DROP TABLE mytable; 5. 修改表结构:使用ALTER TABLE语句可以修改已存在的数据表的结构,包括添加、修改和删除列等操作。例如,ALTER TABLE mytable ADD COLUMN age INT; 6. 添加主键:使用ALTER TABLE语句可以为数据表添加主键约束,以确保每行数据的唯一性。例如,ALTER TABLE mytable ADD PRIMARY KEY (id); 7. 添加外键:使用ALTER TABLE语句可以为数据表添加外键约束,以确保与其他表的关联完整性。例如,ALTER TABLE mytable ADD FOREIGN KEY (customer_id) REFERENCES customers(id); 8. 创建索引:使用CREATE INDEX语句可以为数据表创建索引,以提高查询性能。例如,CREATE INDEX idx_name ON mytable (name); 这些是MySQLDDL的基础操作,通过这些操作可以定义和管理数据库的结构。如果你有更具体的问题或者需要了解更多高级的DDL操作,请告诉我。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不喜欢热闹的孩子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值