表操作:修改表、创建表、添加字段、创建序列、创建唯一约束

  为实现数据库中表规范化设计的目的,有时候需要对之前已经创建的表进行结构修改或者调整。在 MySQL 中可以使用 ALTER TABLE 语句来改变原有表的结构,例如增加或删减列、创建或取消索引、更改原有列类型、重新命名列或表等。

基本语法

  修改表指的是修改数据库中已经存在的数据表的结构。MySQL 使用 ALTER TABLE 语句修改表。常用的修改表的操作有修改表名、修改字段数据类型或字段名、增加和删除字段、修改字段的排列位置、更改表的存储引擎、删除表的外键约束等。

ALTER TABLE <表名> [修改选项]

  修改选项的语法格式如下:

{ ADD COLUMN <列名> <类型>
| CHANGE COLUMN <旧列名> <新列名> <新列类型>
| ALTER COLUMN <列名> { SET DEFAULT <默认值> | DROP DEFAULT }
| MODIFY COLUMN <列名> <类型>
| DROP COLUMN <列名>
| RENAME TO <新表名> }

  详见博客:http://c.biancheng.net/view/2433.html

1、修改表

-- 第一种情况:表中并没数据
alter table 表名 alter column 字段 set default 0;

-- 第二种情况:是表中已存在数据
update tablename set 字段=0-- 修改值
alter table 表名 alter column 字段 set default 0;   -- 修改默认值

2、创建表

CREATE TABLE public.edu_user
(
    user_id int PRIMARY KEY NOT NULL,
    phone_num varchar(32) NOT NULL,
    email varchar(128) NOT NULL,
    cert_num varchar(64),
    name varchar(64),
    address varchar(256)
);

3、添加字段

ALTER TABLE public.edu_user ADD password varchar(64);

4、创建序列

CREATE SEQUENCE seq_edu_user START 1 maxvalue 2147483647;

5、创建唯一约束

CREATE UNIQUE INDEX edu_user_phone_num_uindex ON public.edu_user (phone_num);
原文地址:https://www.cnblogs.com/goloving/p/14886622.html