MySQL表的操作02
【1】设置非空约束(NOT NULL ,NK)--->>>目的是f防止某些字段中的内容为空
CREATE TABLE +table_name (
属性名 数据类型 NOT NULL,
.........
);
【2】设置字段的默认值(DEFAULT)
CREATE TABLE +table_name (
属性名 数据类型 DEFAULT 默认值,
........
);
【3】设置唯一约束(UNIQUE,UK)===>>>保证字段的唯一性,比如记录学生档案信息的时候,要保证学生的学号信息的唯一性。
CREATE TABLE +table_name (
属性名 数据类型 UNIQUE,
.........
);
【4-1】设置单字段主键约束(PRIMARY KEY,PK)===>>>主键约束在表中定义一个主键来唯一确定表中每一行数据的标识符。每张数据表只能存在一个主键;主键保证记录的唯一性;主键自动为NOT NULL(非空)。有类似UNIQUE的效果,来保证字段的唯一性。
CREATE TABLE +table_name
(属性名 数据类型 ,
属性名 数据类型 ,
......
PRIMARY KEY(属性名));
例子:
CREATE TABLE stu_info
(id int ,
name VARCHAR(12),
yeold int,
PRIMARY KEY(id));
若输入与主键重复的字段,则报错!!!
mysql> INSERT INTO stu_info VALUE(1,'jack',25);
ERROR 1062 (23000): Duplicate entry '1' for key 'PRIMARY'
【4-2】多字段主键
CREATE TABLE +table_name
(属性名 数据类型 ,
属性名 数据类型 ,
......
PRIMARY KEY(属性名1,属性名2,.....)); >>>注意:此时表示属性名1和属性名2同时都不重复,是“且”的含义。否则输入命令不报错
【5】设置字段值自动增加(AUTO_INCREMENT) >>>默认下,该字段的值是从1开始增加,每增加一条记录,记录中该字段的值就会在前一条记录的基础上加1。
CREATE TABLE +table_name(
属性名 数据类型 AUTO_INCREMENT,
..........
);
例子:
mysql> DESC stu_info;
+-------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+----------------+
| ID | int(11) | NO | PRI | NULL | auto_increment |
| name | varchar(12) | YES | | NULL | |
| yeold | int(11) | YES | | NULL | |
+-------+-------------+------+-----+---------+----------------+
【6】设置外键约束(FOREIGN KEY,FK)>>>
如果表A的主关键字是表B中的字段,则该字段称为表B的外键,表A称为主表,表B称为从表。外键是用来实现参照完整性的,不同的外键约束方式
将可以使两张表紧密的结合起来,特别是修改或者删除的级联操作将使得日常的维护工作更加轻松。外键主要用来保证数据的完整性和一致性.
两个表必须是InnoDB表,MyISAM表暂时不支持外键
外键列必须建立了索引,MySQL 4.1.2以后的版本在建立外键时会自动创建索引,但如果在较早的版本则需要显示建立;
外键关系的两个表的列必须是数据类型相似,也就是可以相互转换类型的列,比如int和tinyint可以,而int和char则不可以; CREATE TABLE +table_name (
属性名 数据类型,
属性名 数据类型,
.....
CONSTRAINT 外键约束名 FOREIGN KEY (属性名1)
REFERENCES 表名 (属性名2)
MySQL表的操作02的更多相关文章
- Django之mysql表单操作
在Django之ORM模型中总结过django下mysql表的创建操作,接下来总结mysql表记录操作,包括表记录的增.删.改.查. 1. 添加表记录 class UserInfo(models.Mo ...
- MySQL表的操作
一.存储引擎(了解) 前几节我们知道mysql中建立的库===>文件夹,库中的表====>文件 现实生活中我们用来存储数据的文件有不同的类型,每种文件类型对应各自不同的处理机制:比如处理文 ...
- MySQL基本简单操作02
MySQL基本简单操作 先进入Mysql容器. [root@promote ~]# docker exec -it mysql /bin/bash root@30d60b852cf5:/# mysql ...
- MySQL表的操作01
表在数据库中主要用来实现存储数据记录,其基本操作包括创建表.查看表.删除表和修改表. 表中的数据库对象包括: 1.列(COLUMNS):也称属性列,在具体创建表时,必须指定列的名字和它的数据类型. 2 ...
- MySQL:表的操作 知识点难点总结:表完整性约束及其他常用知识点二次总结🙄
表操作 一 : 修改表表表表表表表表表: ALTER TABLE 语法 1. 改表名rename alter table 表名 rename 新表名 2. 增加字段add alter table 表名 ...
- 整理好的一些mysql表详细操作
一.创建表的完整语法#语法:create table 库名.表名( 字段名1 类型[(宽度) 约束条件], 字段名2 类型[(宽度) 约束条件], 字段名3 类型[(宽度) 约束条件]);约束条件:是 ...
- MySQL 表的操作语句(2)
一:MySQL支持的数据类型 1:CHAR和TEXT :分别表示定长的和可变长的串. CHAR:1-255个字符的定长串,它的长度必须在创建时指定. TEXT:最大长度为64K的文本 VARCHAR: ...
- mysql 表结构操作
alter table name : alter table table1 to table2;add column : alter table 表名 add column 列名 varchar(); ...
- Mysql:表的操作
1.列的添加 2.列的删除 删除多列只需在DROP id 后加, DROP column_name; 3.显示表属性 4.设置默认值 5.删除默认值
随机推荐
- Postgresql Json Sql
a detailed website about json sql query; official website: here, chinese version: here Json query: - ...
- Xshell 5
Xshell 5安装步骤(带安装包):http://www.cnblogs.com/ysocean/p/7702243.html
- Java学习笔记(十二)面向对象---内部类
内部类的访问规则 内部类可以直接访问外部类中的成员,包括私有成员. 因为内部类中持有了一个外部类的引用,格式为:外部类名.this 外部类要访问内部类,必须要建立内部对象. class Outer { ...
- vue组件中的data为什么是函数?
一.vue组件中的data为什么是函数 为了保证组件的独立性 和 可 复用性,data 是一个函数,组件实例化的时候这个函数将会被调用,返回一个对象,计算机会给这个对象分配一个内存地址,你实例化几次, ...
- JDBC没有导入驱动jar包
- C++-hihoCode1545-小Hi和小Ho的对弈游戏[树上Nim]
#include <set> #include <map> #include <cmath> #include <queue> #include < ...
- macaron 根目录默认为templates文件夹,所以如果启动目录同目录下有templates目录,要给它指定另一个文件夹
m *macaron.Macaron //随便指向一个目录,因为web没用到模板,不能使用默认值templates,因为这个目录被其他模板占用了m.Use(macaron.Renderer(macar ...
- 一点点学习PS--实战五
本节实战的内容,新学习到的功能是:人物影子边缘.立体的心形 1.工具的使用: (1)滤镜--模糊--特殊模糊 (2)滤镜--滤镜库--艺术效果--水彩 (3)滤镜--滤镜库--纹理化 (4)自动形状工 ...
- Go_初始化是否为nil
package main import ( "fmt" ) func main() { //基本数据类型(默认值) var a int fmt.Println(a) //0 a = ...
- 2、Spring-RootApplicationContext-refresh
上一篇文中提到父容器root applicationContext最后是调用XmlWebApplicationContext去实现的, 但是什么时候开始解析标签(默认标签.自定义标签).注册bean以 ...