(SQL学习随笔2)SQL语法——表创建与插入数据

表创建

基本的创建表

CREATE TABLE IF NOT EXISTS demo_table
(
	tinyint_col TINYINT, -- -128到127
    int_col INT, -- -2147483648到2147483647
    bigint_col BIGINT, -- -9223372036854775808到9223372036854775807
    float_col FLOAT,
    double_col DOUBLE,
    char_col CHAR(n), -- 定长字符,n代表设定的定长字符长度,默认不写(n)则为1
	varchar_col VARCHAR, -- 有限变长字符,在MySQL中这里的`n`是必须设定的,而PostgreSQL中可以不写n
	text_col TEXT, -- 无限变长字符
	longtext_col LONGTEXT, -- ,MySQL中存储范围最大的无长度限制变长字符
	bool_col TINYINT, -- MySQL中没有真正的布尔类型,可以使用1\0代替
	boolean_col BOOLEAN, -- PostgreSQL中含有,true\false
);

查看详情:
https://www.runoob.com/mysql/mysql-data-types.html
https://www.runoob.com/postgresql/postgresql-data-type.html

创建时添加约束

CREATE TABLE 表名
(
    字段1 数据类型 列级别约束条件,
    字段2 数据类型 列级别约束条件,
    ... ...
    字段n 数据类型 列级别约束条件
    表级别约束条件
);

CREATE TABLE IF NOT EXISTS limit_demo
(
    col1 TEXT NOT NULL, -- 非空约束
    col2 VARCHAR(4) DEFAULT 'default_value',
    col3 INT DEFAULT 0, -- 默认值
    uid INT PRIMARY KEY, -- 单字段主键
    PRIMARY KEY(col1, col2, col3), -- 多字段主键
    uid2 INT UNIQUE, -- 非主键唯一性约束
    idx INT PRIMARY KEY AUTO_INCREMENT, -- 自增字段,默认从1开始;可以指定值,后续值会在该次指定值的基础上自增
    
    # PostgreSQL内的自增
    id1 SMALLSERIAL PRIMARY KEY, -- 1到32767内自增
    id2 SERIAL PRIMARY KEY, -- 1到2147483647内自增
    id3 BIGSERIAL PRIMARY KEY, -- 1到9223372036854775807内自增
    
);

插入数据

基本插入

INSERT INTO 表名(字段1, 字段2, ..., 字段n) 
VALUES(字段11, 字段21, ..., 字段n值1), ..., (字段1值m, 字段2值m, ..., 字段n值m);

# 插入完整的行记录
-- 创建示例表
CREATE TABLE insert_demo1
(
    col1 INT,
    col2 CHAR(4),
    col3 FLOAT
);

-- 插入几行示例数据
INSERT INTO insert_demo1 VALUES
(1, '测试1', 1.1), (2, '测试2', 2.2); -- `表名`后的`(字段1, 字段2, ..., 字段n) `可以省略,前提是`VALUES`后衔接的单个或多个元组中,每个元组中都按顺序对应每个字段的当前行记录值

# 指定部分字段进行插入
-- 创建示例表
CREATE TABLE insert_demo2
(
    col1 INT PRIMARY KEY AUTO_INCREMENT,
    col2 CHAR(4) DEFAULT '无',
    col3 FLOAT,
    col4 TEXT
);

INSERT INTO insert_demo2(col3, col4) VALUES
(1.1, '测试数据1'), (1.2, '测试数据2'); -- 触发缺失值、默认值填充,主键自增等约束

从文件中导入

CREATE TABLE flights
(
    year INT,
    month CHAR(3),
    passengers INT,
    PRIMARY KEY (year, month)
);
  • 选择表——右键——Import Data from File——选择文件

(SQL学习随笔2)SQL语法——表创建与插入数据_第1张图片

你可能感兴趣的:(SQL,SQL)