• MySQL创建表


    在本教程中,我们将向您展示如何使用MySQL CREATE TABLE语句在数据库中创建新表。

    MySQL CREATE TABLE语法

    要在数据库中创建一个新表,可以使用MySQL CREATE TABLE语句。 CREATE TABLE语句是MySQL中最复杂的语句之一。

    下面以简单的形式来说明CREATE TABLE语句的语法:

    CREATE TABLE [IF NOT EXISTS] table_name(
            column_list
    ) engine=table_type;
    
    SQL

    我们来更详细地来查看其语法:

    • 首先,指定要在CREATE TABLE子句之后创建的表的名称。表名在数据库中必须是唯一的。 IF NOT EXISTS是语句的可选部分,允许您检查正在创建的表是否已存在于数据库中。 如果是这种情况,MySQL将忽略整个语句,不会创建任何新的表。 强烈建议在每个CREATE TABLE语句中使用IF NOT EXISTS来防止创建已存在的新表而产生错误。

    • 其次,在column_list部分指定表的列表。字段的列用逗号()分隔。我们将在下一节中向您展示如何更详细地列(字段)定义。

    • 第三,需要为engine子句中的表指定存储引擎。可以使用任何存储引擎,如:InnoDBMyISAMHEAPEXAMPLECSVARCHIVEMERGEFEDERATEDNDBCLUSTER。如果不明确声明存储引擎,MySQL将默认使用InnoDB

    注:InnoDB自MySQL 5.5之后成为默认存储引擎。 InnoDB表类型带来了诸如ACID事务,引用完整性和崩溃恢复等关系数据库管理系统的诸多好处。在以前的版本中,MySQL使用MyISAM作为默认存储引擎。

    要在CREATE TABLE语句中为表定义列,请使用以下语法:

    column_name data_type[size] [NOT NULL|NULL] [DEFAULT value] 
    [AUTO_INCREMENT]
    
    SQL

    以上语法中最重要的组成部分是:

    • column_name指定列的名称。每列具有特定数据类型和大小,例如:VARCHAR(255)
    • NOT NULLNULL表示该列是否接受NULL值。
    • DEFAULT值用于指定列的默认值。
    • AUTO_INCREMENT指示每当将新行插入到表中时,列的值会自动增加。每个表都有一个且只有一个AUTO_INCREMENT列。

    如果要将表的特定列设置为主键,则使用以下语法:

    PRIMARY KEY (col1,col2,...)
    
    SQL

    MySQL CREATE TABLE语句示例

    下面让我们练习一个例子,在示例数据库(testdb)中创建一个名为tasks的新表,如下所示:

    可以使用CREATE TABLE语句创建这个tasks表,如下所示:

    CREATE TABLE IF NOT EXISTS tasks (
      task_id INT(11) NOT NULL AUTO_INCREMENT,
      subject VARCHAR(45) DEFAULT NULL,
      start_date DATE DEFAULT NULL,
      end_date DATE DEFAULT NULL,
      description VARCHAR(200) DEFAULT NULL,
      PRIMARY KEY (task_id)
    ) ENGINE=InnoDB;
    
    SQL

    在本教程中,您已经学习了如何使用MySQL CREATE TABLE语句在数据库中创建新表。



  • 相关阅读:
    【C#】:浅谈反射机制 【转】
    ArcGIS Server 10中的切图/缓存机制深入【转】
    ArcGIS Server的切图原理深入【转】
    【OpenGL】用OpenGL shader实现将YUV(YUV420,YV12)转RGB-(直接调用GPU实现,纯硬件方式,效率高)
    MFC 带Ribbonbar的窗口 实现全屏和取消全屏
    C#.net开发 List与DataTable相互转换 【转】
    Net编程 详解DataTable用法【转】
    三维空间两直线/线段最短距离、线段计算算法 【转】
    OSG立体模式下动态修改相机远近裁剪面的实现
    用curl去探测接口是否正常返回结果,若没有正常返回则触发报警
  • 原文地址:https://www.cnblogs.com/borter/p/12452689.html
Copyright © 2020-2023  润新知