4.MySQL操作数据表

作者: 你好星期四 | 来源:发表于2017-05-06 11:57 被阅读52次

    要使用数据表,首先要指定某个数据库。

    USE

    USE database1;
    

    创建数据表

    CREATE TABLE [IF NOT EXISTS] table_name(
       column_name data_type,
       ...
    );
    

    eg

    CREATE TABLE IF NOT EXISTS table_1(
       username VARCHAR(20),
       age TINYINT UNSIGNED,
       salary FLOAT(8,2) UNSIGNED
    );
    

    查看数据表

    SHOW TABLES

    SHOW TABLES [FROM db_name] [LIKE 'pattern' | WHERE expr]
    

    eg 查看MySQL中自带的表

    SHOW TABLES FROM mysql;
    

    查看数据表结构

    SHOW COLUMNS FROM tbl_name;
    

    插入记录

    INSERT [INTO] tbl_name[(col_name, ...)] VALUES(val,...);
    

    eg

    INSERT table_1 VALUES('Tom', 25, 6000.00);
    INSERT table_1(username, salary) VALUES('zhangsan', 4500.00);
    

    查找

    SELECT expr, ... FROM tbl_name;
    

    eg

    SELECT * FROM tb1;
    

    空值与非空

    • NULL
    • NOT NULL
    CREATE TABLE tb2(
        username VARCHAR(20) NOT NULL,
        age TINYINT UNSIGNED NULL
    );
    

    主键

    • PRIMARY KEY
    • 主键约束
    • 每张数据表只能存在一个主键
    • 主键保证记录的唯一性
    • 主键自动为NOT NULL
    • 主键不一定和AUTO_INCREMENT一起使用
    CREATE TABLE tb3(
        id INT PRIMARY KEY,
        username VARCHAR(20) NOT NULL,
        age TINYINT UNSIGNED NULL
    );
    

    自动编号

    • AUTO_INCREMENT
    • 自动编号,且必须与主键组合使用
    • 默认情况下,起始值为1,增量为1
    CREATE TABLE tb3(
        id INT AUTO_INCREMENT PRIMARY KEY,
        username VARCHAR(20) NOT NULL,
        age TINYINT UNSIGNED NULL
    );
    

    唯一

    • UNIQUE KEY
    • 唯一约束
    • 唯一约束可以保证记录的唯一性
    • 唯一约束的字段可以为空值(NULL)
    • 每张数据表可以存在多个唯一约束
    CREATE TABLE tb3(
        id INT AUTO_INCREMENT PRIMARY KEY,
        username VARCHAR(20) NOT NULL,
        email VARCHAR(50) NOT NULL UNIQUE KEY,
        age TINYINT UNSIGNED NULL
    );
    

    默认值

    • DEFAULT
    • 当插入记录时,如果没有明确为字段赋值,则自动赋予默认值
    CREATE TABLE table_3(
        id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
        username VARCHAR(30) NOT NULL,
        email VARCHAR(50) NOT NULL UNIQUE KEY,
        age TINYINT,
        gendar ENUM('男','女','保密') DEFAULT '保密'
    );
    

    相关文章

      网友评论

        本文标题:4.MySQL操作数据表

        本文链接:https://www.haomeiwen.com/subject/lavetxtx.html