怎么创建和修改数据表?
- 创建和修改数据表,是数据存储过程中的重要⼀环。
- 我们不仅需要把表创建出来,还需要正确地设置限定条件,这样才能确保数据的一致性和完整性。
- 同时,表中的数据会随着业务需求的变化而变化,添加和修改相应的字段也是常见的操作。
如何创建数据表?
- 首先,我们要知道 MySQL 创建表的语法结构:
CREATE TABLE <表名> ( 字段名 name1 数据类型 [字段级别约束] [默认值], 字段名 name2 数据类型 [字段级别约束] [默认值], 字段名 name3 数据类型 [字段级别约束] [默认值], ...... [表级别约束] );
- 我们通过定义表名、表中的字段、表的属性等,把一张表创建出来。
- “约束”限定了表中数据应该满足的条件。
- 假设创建一个表叫做进货单头表(importhead):
- 1、2、3 表示门店的 3 种进货方式,分别是配送中心配送、门店采买和供货商直供。
- 其中,“1(配送中心配送)”是标准进货方式,我们希望这个字段的值能够默认是 1。
- 我们先来看基本的数据表创建流程如下:
CREATE TABLE importhead ( listnumber INT, supplierid INT, stocknumber INT, importtype INT DEFAULT 1, quantity DECIMAL(10, 3), importvalue DECIMAL(10, 2), recorder INT, recordingdate DATETIME );
- 接下来插入一条数据:
INSERT INTO importhead ( listnumber, supplierid, stocknumber, quantity, importvalue, recorder, recordingdate ) VALUES ( 3456, 1, 1, 10, 100, 1, '2020-12-10' );
都有哪些约束?
- 给字段设置默认值的做法,就是默认约束。
- 设置了默认约束,插入数据的时候,如果不明确给字段赋值,那么系统会把设置的默认值自动赋值给字段。
- 除了默认约束,还有主键约束、外键约束、非空约束、唯⼀性约束和自增约束。
- 非空约束
- 非空约束表示字段值不能为空,如果创建表的时候,指明某个字段非空,那么添加数据的时候,这个字段必须有值,否则系统就会提示错误。
- 唯⼀性约束
- 唯⼀性约束表示这个字段的值不能重复,否则系统会提示错误。
- 跟主键约束相比,唯⼀性约束要更加弱⼀些。
- 自增约束
- 自增约束可以让 MySQL 自动给字段赋值,且保证不会重复,非常有用,只是不容易用好。
- 在数据表中,只有整数类型的字段(包括 TINYINT、SMALLINT、MEDIUMINT、INT 和 BIGINT),才可以定义自增约束。自增约束的字段,每增加⼀条数据,值自动增加 1。
- 你可以给自增约束的字段赋值,这个时候,MySQL 会重置自增约束字段的自增基数,下次添加数据的时候,自动以自增约束字段的最大值加 1 为新的字段值。
- 在一个表中,我们可以指定多个字段满足唯一性约束,而主键约束则只能有一个,这是 MySQL 系统决定的。另外,满足主键约束的字段,自动满足非空约束,但是满足唯一性约束的字段,则可以是空值。
如何修改表?
- 进货单表是存储进货数据的。我们还要创建⼀个进货单历史表(importheadhist)来存储验收过的进货数据。
- 这个表的结构跟进货单表类似,只是多了 2 个字段,分别是验收人(confirmer)和验收时间(confirmdate)。
- 首先,我们要把原来的表结构复制:
CREATE TABLE importheadhist LIKE importhead;
- 我们需要对这个表进行修改,通过添加字段和修改字段,来获得我们需要的“进货单历史表”:
ALTER TABLE importheadhist ADD confirmer INT; ALTER TABLE importheadhist ADD confirmdate DATETIME;
- 除了添加字段,我们可能还要修改字段,我们要把字段名称“quantity” 改成 “importquantity”,并且把字段类型改为 DOUBLE:
ALTER TABLE importheadhist CHANGE quantity importquantity DOUBLE;
- 首先,我们要把原来的表结构复制:
文章来源地址https://www.toymoban.com/news/detail-438687.html
文章来源:https://www.toymoban.com/news/detail-438687.html
到了这里,关于《MySQL 必知必会》课程笔记(三)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!