`

MySQL 建表语法

阅读更多
1、最简单的:

CREATE TABLE t1(
   id int not null,
   name char(20)
);

2、带主键的:

a:
CREATE TABLE t1(
   id int not null primary key,
   name char(20)
);

b:复合主键
CREATE TABLE t1(
   id int not null,
   name char(20),
   primary key (id,name)
);

3、带默认值的:

CREATE TABLE t1(
   id int not null default 0 primary key,
   name char(20) default '1'
);

-----------------------------------------------------------
CREATE TABLE PLAYERS
       (PLAYERNO      INTEGER NOT NULL PRIMARY KEY,
        NAME          CHAR(15) NOT NULL,
        INITIALS      CHAR(3) NOT NULL,
        BIRTH_DATE    DATE,
        SEX           CHAR(1) NOT NULL
                     CHECK(SEX IN ('M','F')),
        JOINED        SMALLINT NOT NULL
                     CHECK(JOINED > 1969) ,
        STREET        CHAR(30) NOT NULL,
        HOUSENO       CHAR(4),
        POSTCODE      CHAR(6) CHECK(POSTCODE LIKE '______'),
        TOWN          CHAR(10) NOT NULL,
        PHONENO       CHAR(13),
        LEAGUENO      CHAR(4))
;
CREATE TABLE TEAMS
       (TEAMNO        INTEGER NOT NULL PRIMARY KEY,
        PLAYERNO      INTEGER NOT NULL,
        DIVISION      CHAR(6)   NOT NULL
                     CHECK(DIVISION IN ('first','second')),
        FOREIGN KEY   (PLAYERNO) REFERENCES PLAYERS (PLAYERNO))
;
CREATE TABLE MATCHES
       (MATCHNO       INTEGER NOT NULL PRIMARY KEY,
        TEAMNO        INTEGER NOT NULL,
        PLAYERNO      INTEGER NOT NULL,
        WON           SMALLINT NOT NULL
                     CHECK(WON BETWEEN 0 AND 3),
        LOST          SMALLINT NOT NULL
                     CHECK(LOST BETWEEN 0 AND 3),
        FOREIGN KEY (TEAMNO) REFERENCES TEAMS (TEAMNO),
        FOREIGN KEY (PLAYERNO) REFERENCES PLAYERS (PLAYERNO))
;
CREATE TABLE PENALTIES
       (PAYMENTNO     INTEGER NOT NULL PRIMARY KEY,
        PLAYERNO      INTEGER NOT NULL,
        PAYMENT_DATE DATE NOT NULL
                     CHECK(PAYMENT_DATE >= DATE('1969-12-31')),
        AMOUNT        DECIMAL(7,2)   NOT NULL
                     CHECK (AMOUNT > 0),
        FOREIGN KEY (PLAYERNO) REFERENCES PLAYERS (PLAYERNO))
;
CREATE TABLE COMMITTEE_MEMBERS
       (PLAYERNO      INTEGER NOT NULL,
        BEGIN_DATE    DATE NOT NULL,
        END_DATE      DATE,
        POSITION      CHAR(20),
        PRIMARY KEY   (PLAYERNO, BEGIN_DATE),
        FOREIGN KEY   (PLAYERNO) REFERENCES PLAYERS (PLAYERNO),
        CHECK(BEGIN_DATE < END_DATE),
        CHECK(BEGIN_DATE >= DATE('1990-01-01')))
;
分享到:
评论

相关推荐

    oracle到mysql建表语句迁移

    oracle向mysql建表语句的迁移。 直接表结构的生成sql脚本

    mysql语句转postgres的工具

    从mysql数据库迁移到postgres数据库转换ddl语句的工具,添加了自动更新时间的触发器。

    GuassDB与MySQL差异点.xlsx

    GuassDB与MySQL的区别以及语法差异,MySQL数据迁移GuassDB的导入导出和GuassDB的基本操作命令

    MySQL 创建数据表,语法讲解

    mysql建表语句

    mysql的语句

    mysql建表一些基本语句,方便初学者在不熟悉mysql基本语法的情况下,轻松使用mysql建表

    mysql常用语法命令函数,emp&dept;表和相关练习

    mysql常用语法命令函数 emp&dept;表的建表语句以及数据 和emp&dept;表相关的练习 九十多题

    mysql基本语法,增删改查大全总结,以及常用的sql语句总结

    mysql语法大全总结,内含DDL,DML,DQL,DCL等语句,可作为工作学习的小字典,随时查看学习,查询所有数据库、查询当前数据库、创建数据库、删除数据库、切换数据库、查询当前数据库的所有表、查看指定表结构、查询指定...

    mysql数据库的基本操作语法

    8、 子查询建表方法 部分列名匹配模式: create table userInfo ( name varchar(20), sex char ) as select name, sex from user; 上面的列名和子查询的列名以及类型要对应 全部列名模式: create table userInfo ...

    mysql创建数据库和表的语法

    mysql创建数据库和表的基本语法,以及对数据库进行操作的语法,适合于初次接触Mysql的人

    基于 MySQL 8.2.0 源码开发的 SQL 审核工具,100.000% 兼容 MySQL 语法

    基于 MySQL 8.2.0 源码开发的 SQL 审核工具,100.000% 兼容 MySQL 语法。 在对 MySQL 语法兼容性方面,与市面上任何同款工具对比,遥遥领先! 文档目录: 1. 控制 SQL 审核的全局系统变量 1.1 默认的 SQL 审核系统...

    Oracle Sql语句转换成Mysql Sql语句

    Oracle Sql语句转换成Mysql Sql语句java 源码,非常简单,只要给定源oracle sql语句地址,和生成目标文件地址运行即可。

    Mysql元数据如何生成Hive建表语句注释脚本详解

    本文主要给大家介绍了关于Mysql元数据生成Hive建表语句注释脚本的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍: 最近在将数据从Mysql 等其他关系型数据库 抽取到Hive 表中时,需要同步...

    Mysql 基础练习大全(建表到基本查询)​

    查询语法示例:MySQL查询练习可以提供一系列查询语法示例,包括SELECT语句的基本用法、使用WHERE子句进行条件过滤、使用ORDER BY子句进行排序、使用GROUP BY子句进行分组、使用JOIN进行表连接等。每个示例都会提供一...

    人大金仓 KingbaseES V8 手册 及 sql语法手册

    人大金仓 KingbaseES V8 手册 及 sql语法手册

    Mysql临时表及分区表区别详解

    内存表,指的是使用Memory引擎的表,建表语法是create table … engine=memory。这种 表的数据都保存在内存里,系统重启的时候会被清空,但是表结构还在。除了这两个特性看 上去比较“奇怪”外,从其他的特征上看,...

    mysql常用命令

    语法如下: mysql -u用户名 -p用户密码 键入命令mysql -uroot -p, 回车后提示你输入密码,输入12345,然后回车即可进入到mysql中了,mysql的提示符是: mysql&gt; 注意,如果是连接到另外的机器上,则需要加入一个参数...

    MySQL中create table语句的基本语法是

    MySQL中create table语句的基本语法是: Create [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name [(create_definition,…)] [table_options] [select_statement] TEMPORARY:该关键字表示用create table...

    GPT 对话成本推演-数据demo

    本资源值提供数据插入的语法,建库建表语法参考原文《GPT3.5 改用 GPT4 价格翻了30倍!如何破局? GPT 对话成本推演》

    MySQL命令大全

    1、建表 命令:create table &lt;表名&gt; ( &lt;字段名&gt; &lt;类型&gt; [,..&lt;字段名n&gt; &lt;类型n&gt;]); mysql&gt; create table MyClass( &gt; id int(4) not null primary key auto_increment, &gt; name char(20) not null, &gt; sex int(4) ...

    MySQL 创建索引(Create Index)的方法和语法结构及例子

    CREATE INDEX Syntax CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name [index_type] ON tbl_name (index_col_name,…) [index_type] index_col_name: col_name [(length)] [ASC | DESC] index_type: USING {...

Global site tag (gtag.js) - Google Analytics