MySQL建表语句及完整案例详解

一、MySQL查询建表语句

在MySQL中查询已经建好的表语句很简单,只需要用到SHOW CREATE TABLE和表名的语法。具体语句如下:

SHOW CREATE TABLE table_name;

例如我们现在要查询一个名为“user_info”的表的建表语句,则语句为:

SHOW CREATE TABLE user_info;

执行以上语句,可以得到 “user_info”表的建表语句。当然,如果不喜欢在查询结果中出现反引号,可以使用以下语句:

SET sql_notes = 0;
SHOW CREATE TABLE table_name;
SET sql_notes = 1;

执行以上语句,即可隐藏所有表名外部的反引号。

二、MySQL建表的完整步骤

MySQL建表的完整步骤可以总结为以下几个关键点:

1. 选择好库名

在使用MySQL建表前,首先需要在命令行或者图形化界面上创建好库名。具体命令为:

CREATE DATABASE database_name;

2. 切换到选定的库名

使用以下命令切换到选定的库名:

USE database_name;

3. 设计表结构

在MYSQL中首先需要设计好表结构,在设计的过程中需要考虑表需要承载的数据类型,表的关联,表中字段之间的依赖等问题。表设计的好坏直接决定了数据的规范和管理实现的难度。

4. 创建表

在MYSQL中使用CREATE TABLE创建一个新表。语法格式如下:

CREATE TABLE table_name (
    column1 datatype contraint,
    column2 datatype constraint,
    column3 datatype constraint,
    ....
     );

其中,table_name为所要创建的新表的名称;column1, column2, column3为表中的字段名称,datatype为数据类型,constraint为限制条件。

5. 添加表数据

在MYSQL中向表中添加数据,可以使用INSERT INTO语法。语法格式如下:

INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);

其中,table_name为表名称,column1,column2,column3为表字段名称,value1,value2,value3为对应的字段值。

三、MySQL建表语句

MySQL建表语句的语法格式如下:

CREATE TABLE table_name (
    column1 datatype constraint,
    column2 datatype constraint,
    column3 datatype constraint,
    ....
     );

其中,table_name为所要创建的新表的名称;column1, column2, column3为表中的字段名称,datatype为数据类型,constraint为限制条件。

例如,以下是一个创建“customer_info”表的例子,包含了3个字段,分别为“user_id”,“user_name”,“user_age”:

 CREATE TABLE customer_info (
    user_id INT PRIMARY KEY,
    user_name VARCHAR(255) NOT NULL,
    user_age INT 
);

执行以上语句,“customer_info”表将被成功创建。

四、MySQL建表语句日期

如果需要在MySQL建表语句中添加日期类型的字段,可以使用DATE, TIME, DATETIME, TIMESTAMP, YEAR等类型,其语法如下:

CREATE TABLE table_name (
    column_name DATE,
    column_name TIME,
    column_name DATETIME,
    column_name TIMESTAMP,
    column_name YEAR
);

例如,以下是一个创建“book_info”表的例子,包含了3个字段,分别为“book_id”,“book_name”,“book_publish_time”:

CREATE TABLE book_info (
    book_id INT PRIMARY KEY,
    book_name VARCHAR(255) NOT NULL,
    book_publish_time DATE
);

执行以上语句,“book_info”表将被成功创建,其中“book_publish_time”字段类型为DATE。

五、MySQL的建表语句

MySQL建表语句包含了数据类型和约束条件两个关键点。数据类型代表了字段的数据类型,包括INT, VARCHAR, DECIMAL等等。约束条件则用于限制字段的取值范围和规则,包括NOT NULL, PRIMARY KEY, UNIQUE, CHECK等。

例如,以下是一个创建一个包含了数据类型和约束条件的“order_info”表的例子,包含了5个字段,分别为“order_id”,“user_id”,“order_time”,“order_desc”,“order_price”:

CREATE TABLE order_info (
            order_id INT PRIMARY KEY,
            user_id INT NOT NULL,
            order_time DATETIME NOT NULL,
            order_desc VARCHAR(255),
            order_price DECIMAL(10, 2) NOT NULL,
            UNIQUE (user_id)
);

执行以上语句,“order_info”表将被成功创建,其中order_id字段类型为INT PRIMARY KEY,user_id字段类型为INT NOT NULL,order_time字段类型为DATETIME NOT NULL,order_desc字段类型为VARCHAR(255),order_price字段类型为DECIMAL(10, 2) NOT NULL,其中约束条件为UNIQUE (user_id)。

六、MySQL建库建表语句

MySQL建库建表语句是用于建立一整个数据库架构的方法,即不仅需要建表,还需要建立相关的表之间的关联和索引。

以下是一个统计用户购买行为的MySQL建库建表语句的例子:

CREATE DATABASE user_order;

USE user_order;

CREATE TABLE user (
    user_id INT(11) NOT NULL AUTO_INCREMENT COMMENT '用户ID',
    user_name VARCHAR(255) NOT NULL COMMENT '用户昵称',
    email VARCHAR(255) NOT NULL COMMENT '用户邮箱',
    PRIMARY KEY (user_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户信息表' ;

CREATE TABLE order (
    order_id INT(11) NOT NULL AUTO_INCREMENT COMMENT '订单ID',
    user_id INT(11) NOT NULL COMMENT '用户ID',
    product_id INT(11) NOT NULL COMMENT '商品ID',
    order_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '下单时间',
    order_status INT(11) NOT NULL DEFAULT '0' COMMENT '订单状态:0-未支付,1-已支付,2-已取消',
    PRIMARY KEY (order_id),
    KEY user_id (user_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='订单信息表';

执行以上语句,则会在MySQL中创建一个名为“user_order”的数据库和两张对应的表——“user”和“order”。

七、MySQL建库建表例子

以下是一个类似于博客网站的例子,展示了如何在MySQL中建立多张表格,以存储博客的用户、文章和评论信息。具体内容如下:

CREATE DATABASE blog_system;

USE blog_system;
 
CREATE TABLE user (
    user_id INT PRIMARY KEY AUTO_INCREMENT,
    user_name VARCHAR(50) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户信息表';

CREATE TABLE article (
    article_id INT PRIMARY KEY AUTO_INCREMENT,
    user_id INT NOT NULL,
    title VARCHAR(50) NOT NULL,
    content TEXT NOT NULL,
    publish_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    INDEX (user_id),
    CONSTRAINT article_user_fk FOREIGN KEY (user_id) REFERENCES user(user_id)
        ON DELETE CASCADE
        ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='文章信息表';

CREATE TABLE comment (
    comment_id INT PRIMARY KEY AUTO_INCREMENT,   
    user_id INT NOT NULL,
    article_id INT NOT NULL,
    content TEXT NOT NULL,
    comment_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    CONSTRAINT comment_article_fk FOREIGN KEY (article_id) REFERENCES article(article_id)
        ON DELETE CASCADE
        ON UPDATE CASCADE,
    CONSTRAINT comment_user_fk FOREIGN KEY (user_id) REFERENCES user(user_id)
        ON DELETE CASCADE
        ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='文章评论表';

执行以上语句,则在MySQL中成功创建了一个“blog_system”数据库和三张对应的表——“user”、“article”和“comment”。

八、MySQL建表语句加注释

在MySQL中,添加注释可以使代码更加易读,方便其他人理解。常用的添加注释的的方法有以下两种:

1. 添加注释到表格中

在MySQL建表语句中向表格中添加注释十分简单,只需要在列名和数据类型之间添加注释即可。例如:

CREATE TABLE blog_info (
    blog_id INT(11) PRIMARY KEY COMMENT '博客ID',
    blog_title VARCHAR(50) NOT NULL COMMENT '博客标题',
    blog_content TEXT COMMENT '博客内容'
) ENGINE=InnoDB CHARSET=utf8 COMMENT='博客信息表';

2. 添加注释到字段中

在MySQL建表语句中向字段中添加注释,只需要在数据类型和约束条件之间添加注释就可以了。例如:

CREATE TABLE payment (
  payment_id INT(11) NOT NULL COMMENT '订单ID',
  payment_date TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '支付时间',
  amount DECIMAL(10,2) NOT NULL COMMENT '支付金额',
  PRIMARY KEY (payment_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='支付信息记录表';

以上语句为建立一个“payment”表,其中“payment_id”字段有注释“订单ID”,“payment_date”字段有注释“支付时间”,“amount”字段有注释“支付金额”。

九、MySQL建表语句主键

在MySQL的建表语句中,主键是非常重要的。主键用于保证表中记录的唯一性,并且可用于优化表格的性能。

以下是一张包含了主键的“order_info”表的MySQL建表语句的例子:

CREATE TABLE order_info (
    order_id INT PRIMARY KEY AUTO_INCREMENT,
    user_id INT NOT NULL,
    order_time DATETIME NOT NULL,
    order_status INT NOT NULL DEFAULT '0',
    UNIQUE KEY unique_user_order (user_id,order_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='订单信息表';

执行以上语句,则会在MySQL中创建一个名为“order_info”的表格,其中包含了“order_id”字段作为主键。另外,在该表格中还添加了一个包含了“user_id”和“order_id”的联合唯一索引。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/308219.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2025-01-02 18:05
下一篇 2025-01-02 18:05

相关推荐

  • Python数据统计案例的实现

    Python作为一个高级编程语言,拥有着丰富的数据处理库和工具,能够快速、高效地进行各类数据处理和分析。本文将结合实例,从多个方面详细阐述Python数据统计的实现。 一、数据读取…

    编程 2025-04-29
  • 打造照片漫画生成器的完整指南

    本文将分享如何使用Python编写一个简单的照片漫画生成器,本文所提到的所有代码和技术都适用于初学者。 一、环境准备 在开始编写代码之前,我们需要准备一些必要的环境。 首先,需要安…

    编程 2025-04-29
  • 如何在Java中拼接OBJ格式的文件并生成完整的图像

    OBJ格式是一种用于表示3D对象的标准格式,通常由一组顶点、面和纹理映射坐标组成。在本文中,我们将讨论如何将多个OBJ文件拼接在一起,生成一个完整的3D模型。 一、读取OBJ文件 …

    编程 2025-04-29
  • Python中文版下载官网的完整指南

    Python是一种广泛使用的编程语言,具有简洁、易读易写等特点。Python中文版下载官网是Python学习和使用过程中的重要资源,本文将从多个方面对Python中文版下载官网进行…

    编程 2025-04-29
  • 服务器安装Python的完整指南

    本文将为您提供服务器安装Python的完整指南。无论您是一位新手还是经验丰富的开发者,您都可以通过本文轻松地完成Python的安装过程。以下是本文的具体内容: 一、下载Python…

    编程 2025-04-29
  • 微信小程序和Python数据交互完整指南

    本篇文章将从多个方面介绍如何在微信小程序中实现与Python的数据交互。通过本文的学习,您将掌握如何将微信小程序与后台Python代码结合起来,实现更丰富的功能。 一、概述 微信小…

    编程 2025-04-29
  • 使用Snare服务收集日志:完整教程

    本教程将介绍如何使用Snare服务收集Windows服务器上的日志,并将其发送到远程服务器进行集中管理。 一、安装和配置Snare 1、下载Snare安装程序并安装。 https:…

    编程 2025-04-29
  • 使用Python图书馆抢座脚本的完整步骤

    本文将从多个方面详细介绍如何使用Python编写图书馆的座位抢占脚本,并帮助您快速了解如何自动抢占图书馆的座位,并实现您的学习计划。 一、开发环境搭建 首先,我们需要安装Pytho…

    编程 2025-04-28
  • Python Flask系列完整示例

    Flask是一个Python Web框架,在Python社区中非常流行。在本文中,我们将深入探讨一些常见的Flask功能和技巧,包括路由、模板、表单、数据库和部署。 一、路由 Fl…

    编程 2025-04-28
  • 微信mac版历史版完整代码示例与使用方法

    微信是一款广受欢迎的即时通讯软件,为了方便用户在Mac电脑上也能使用微信,微信团队推出了Mac版微信。本文将主要讲解微信mac版历史版的完整代码示例以及使用方法。 一、下载微信ma…

    编程 2025-04-28

发表回复

登录后才能评论