修改数据表——添加约束

  比如,原来数据表根本就没有约束,或者说,约束不够。那么如何来添加约束呢?

添加约束

  1、添加主键约束(只能一个)

  2、添加唯一约束(可以多个)

  3、添加外键约束()

  4、添加默认约束()

  现在,先创建

create table user2(
username  varchaer(10)  not  null ,
pid   smallint  unsigned
);

show  columns  from  user2;

alter table  user2  add  id  smallint  unsigned ;
show  columns  from  user2;

  一、添加主键约束的语法结构

ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]]

PRIMARY KEY [index_type] (index_col_name)

  CONSTRAINT是可以添加,也可以不添加。如果添加的话,表示为约束起名字的意思。

  比如我们为user2表中的id字段添加一个主键约束

alter  table  user2  add   constraint  pk_user2_id   primary  key(id);
show  columns  from  user2;

  二、添加唯一约束的语法结构

ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]]

UNIQUE [INDEX|KEY] [index_name] [index_type]

(index_col_name,…)

  比如我们为user2表中的username字段添加唯一约束

alter  table  user2  add  unique(username);

show  columns  from  user2;

  三、添加外键约束的语法结构

ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]]

FOREIGN KEY [index_name] (index_col_name,…)

reference_definition

  比如我们为user2表中的pid字段添加外键约束

alter   table  user2   add  foregin  key(pid)   references   provinces(id);
show  columns  from  user2;

  四、添加/删除默认约束的语法结构

ALTER TABLE tbl_name ALTER [COLUMN] col_name

{SET DEFAULT literal | DROP DEFAULT}

比如我们为user2表中的age字段添加默认值为15

  

alter   table   user2  alter  age  set  default  15;
show  columns  from  user2;

  当然我们也可以删除我们刚才设置的默认约束

alter   table  user2   alter   age   drop   default;
show  columns  from  user2;
时间: 2024-08-01 10:32:03

修改数据表——添加约束的相关文章

修改数据表——添加删除列

修改数据表的操作,无非就是列的增加.列的删除.约束的增加和约束的删除. 修改数据表 一.添加单列的语法结构 ALTER TABLE tbl_name ADD [COLUMN] col_name column_definition [FIRST|AFTER col_name] 例如:在users表中添加一个age列,如果没有指定这个列的位置,那么它将位于所有列的最下边.如下图. FIRST的意思,将你写的这一列,放在最前头. AFTER的意思,将你写的这一列,放在指定列的后面. 若省略FIRST和

使用SQL语句向已有数据表添加约束

如果向存在数据的表里添加约束,有可能会出现数据不符合检查约束而造成添加约束失败. 如: 这是一个表,为身份证号添加检查约束. USE DEmo--指向当前操作的数据库 GO ALTER TABLE Employee ADD CONSTRALNT CK_EmployeeID CHECK(LEN(EmployeeID=18) 然后会出现 报错意思是数据表里面的身份证号现有数据有不等于18的,与检查约束冲突,会添加失败. 用ALTER  TABLE Employee+ WITH NOCHECK可以解决

MySQL学习笔记 约束以及修改数据表

*** 约束保证数据的完整性和一致性 *** 约束分为表级约束和列级约束 *** 约束类型包括: NOT NULL(非空约束) PRIMARY KEY(主键约束) UNIQUE KEY(唯一约束) DEFAULT(默认约束) FOREIGN KEY(外键约束) 1.外键约束的要求解析 *** 父表和子表必须使用相同的存储引擎,而且禁止使用临时表. *** 数据表的存储引擎只能为InnoDB. *** 外键列和参照列必须具有相似的数据类型.其中数字的长度或是否有符号位必须相同:而字符的长度则可以不

MySQL(三) —— 约束以及修改数据表

约束: 1. 约束保证数据的完整性和一致性: 2. 约束分为表级约束和列级约束: 3. 约束类型包括:NOT NULL, PRIMARY KEY, UNIQUE KEY, DEFAULT, FOREIGN KEY 外键约束 父表和子表必须使用相同的存储引擎,而且禁止使用临时表: 数据库的存储引擎只能为InnoDB: 外键列和参照列必须具有相似的数据类型.其中数字的长度或是否有符号位必须相同:而字符的长度则可以不同: 外键列和参照列必须创建索引.如果外键列不存在索引的话,MySQL将自动创建索引.

约束以及修改数据表

先创建一个数据表 再创建一张数据表,让其属性pid参照上一个provinces数据表的id 主要代码为:FOREIGN KEY (pid) REFERENCES provinces(id) 查看province以及users的表索引,就可以看到两个约束,一个是主键id另一个就是pid 接下来了解外键约束的参照操作 CASCAD:从父表删除或更新且自动删除或更新子表中匹配的行 SET NULL:从父表删除或更新行,并设置子表中的外键列为NULL.如果使用该选项,必须保证子表列没有指定NOT NUL

MySQL数据库基础(二)(约束以及修改数据表)(持续更新中)

一,约束以及修改数据表 约束的作用?1.约束保证数据的完整性.一致性:2.约束分为表级约束.列级约束:3.约束类型包括:NOT NULL(非空约束).PRIMARY KEY(主键约束).UNIQUE KEY(唯一约束).DEFAULT(默认约束).FOREIGN KEY(外键约束): 列级约束:只针对某一个字段:表级约束:针对两个或两个以上的字段: 1.外键约束的要求解析 外键约束作用:1.保持数据一致性.完整性:2.实现一对一或一对多关系:(这是也把MySQL称之为"关系型"数据库的

oracle表空间基本命令,修改数据表结构基本命令

表空间基本命令 --创建表空间   初始化大小10M  自动增长5M  最大50M create tablespace duan datafile 'F:\oracle\product\10.2.0\oradata\orcl\duan.dbf' size 10M autoextend on next 5M maxsize 50M; --查询表空间的地址和空间名称 select file_name,tablespace_name from dba_data_files order by file_

MySQL学习12:修改数据表(二)

我们接着上一篇的添加约束的操作讲述. 三添加约束 (3)添加外键约束 ALTER TABLE table_name ADD [CONSTRAINT [symbol]] FOREIGN KEY [index_name] [index_type] (index_col_name,...) references_definition; 例子: ALTER TABLE users2 ADD FOREIGN KEY (pid) REFERENCES provinces (id); SHOW COLUMNS

MySQL学习11:修改数据表(一)

修改数据表包括添加列.删除列.添加约束.删除约束,修改列定义和修改数据表名称,后面的两个我们使用时 一定要谨慎,尽量不使用. 下面就来一个一个单独介绍怎么修改数据表: 一添加数据表中的列 (1)添加单列 MySQL数据库的数据表中添加单列的语法格式为: ALTER TABLE table_name ADD [COLUMN] col_name columns_definition [FIRST | AFTER col_name]; 例子: SHOW COLUMNS FROM users1; ALT