mysql是什么,mysql 创建表_每天10分钟带你学会MySQL(三)表的创建

 2023-09-25 阅读 28 评论 0

摘要:mysql是什么、要掌握的要点:表通过CREATE TABLE语句创建而成。表和列的命名要使用有意义的文字。指定列的数据类型(整数型、字符型和日期型等)。可以在表中设置约束(主键约束和NOT NULL约束等)。数 据 库 的 创 建(CREATE DATABASE

331e0494b02a77d02a9726c2f0896e31.png

mysql是什么、要掌握的要点:

  1. 表通过CREATE TABLE语句创建而成。
  2. 表和列的命名要使用有意义的文字。
  3. 指定列的数据类型(整数型、字符型和日期型等)。
  4. 可以在表中设置约束(主键约束和NOT NULL约束等)。

数 据 库 的 创 建(CREATE DATABASE语句)

在创建表之前,一定要先创建用来存储表的数据库。运行CREATE DATABASE语句就可以在RDBMS上创建数据库了。CREATE DATABASE语句的语法如下所示A。

语法1-1 创建数据库的CREATE DATABASE语句

CREATE DATABASE <数据库名称>;

这里我们将数据库命名为shop, 创建数据库shop的CREATEDATABASE语句CREATE DATABASE shop;此外,数据库名称、表名以及列名都要使用半角字符(英文字母、数字、符号),具体内容随后会进行介绍。

表的创建(CREATE TABLE语句)创建好数据库之后,接下来我们使用CREATE TABLE语句在其中创建表。CREATE TABLE语句的语法如下所示

创建表的CREATETABLE语句

CREATE TABLE <表名>
(<列名1> <数据类型> <该列所需约束>,<列名2> <数据类型> <该列所需约束>, <列名3> <数据类型> <该列所需约束>, <列名4> <数据类型> <该列所需约束>, .       .      . 
<该表的约束1>, <该表的约束2>,... ... );

创建Product表的CREATETABLE语句

CREATE TABLE  Product
(product_id      CHAR(4)      NOT NULL,product_name    VARCHAR(100)  NOT NULL, 
product_type    VARCHAR(32)  NOT NULL, 
sale_price      INTEGER      ,purchase_price  INTEGER      , 
regist_date     DATE         , PRIMARY KEY (product_id));

命名规则

我们只能使用半角英文字母、数字、下划线(_)作为数据库、表和列的名称。

数据类型的指定

Product表所包含的列,定义在CREATETABLEProduct( )的括号中。列名右边的INTEGER或者CHAR等关键字,是用来声明该列的数据类型的,所有的列都必须指定数据类型。

数据类型表示数据的种类,包括数字型、字符型和日期型等。每一列都不能存储与该列数据类型不符的数据。声明为整数型的列中不能存储'abc'这样的字符串,声明为字符型的列中也不能存储1234这样的数字。

数据类型的种类很多,各个RDBMS之间也存在很大差异。根据业务需要实际创建数据库时,一定要根据不同的RDBMS选用最恰当的数据类型。在学习SQL的时候,使用最基本的数据类型就足够了。下面我们就来介绍四种基本的数据类型。

●INTEGER型用来指定存储整数的列的数据类型(数字型),不能存储小数。

●CHAR型CHAR是CHARACTER(字符)的缩写,是用来指定存储字符串的列的数据类型(字符型)。可以像CHAR(10)或者CHAR(200)这样,在括号中指定该列可以存储的字符串的长度(最大长度)。字符串超出最大长度的部分是无法输入到该列中的。RDBMS不同,长度单位也不一样,既存在使用字符个数的情况,也存在使用字节长度A的情况。

字符串以定长 字 符 串的形式存储在被指定为CHAR型的列中。所谓定长字符串,就是当列中存储的字符串长度达不到最大长度的时候,使用半角空格进行补足。例如,我们向CHAR(8)类型的列中输入'abc'的时候,会以'abc'(abc后面有5个半角空格)的形式保存起来。另外,虽然之前我们说过SQL不区分英文字母的大小写,但是表中存储的字符串却是区分大小写的。也就是说,'ABC'和'abc'代表了两个不同意义的字符串。

●VARCHAR型同CHAR类型一样,VARCHAR型也是用来指定存储字符串的列的数据类型(字符串类型),也可以通过括号内的数字来指定字符串的长度(最大长度)。但该类型的列是以可 变长 字 符 串的形式来保存字符串的B。定长字符串在字符数未达到最大长度时会用半角空格补足,但可变长字符串不同,即使字符数未达到最大长度,也不会用半角空格补足。例如,我们向VARCHAR(8)类型的列中输入字符串'abc'的时候,保存的就是字符串'abc'。该类型的列中存储的字符串也和CHAR类型一样,是区分大小写的

约束的设置约束是除了数据类型之外,对列中存储的数据进行限制或者追加条件的功能。Product表中设置了两种约束。

Product表的product_id列、product_name列和product_type列的定义如下所示。product_id CHAR(4) NOT NULL,product_name VARCHAR(100) NOT NULL,product_type VARCHAR(32) NOT NULL,数据类型的右侧设置了NOT NULL约束。NULL是代表空白(无记录)的关键字A。在NULL之前加上了表示否定的NOT,就是给该列设置了不能输入空白,也就是必须输入数据的约束(如果什么都不输入就 会 出 错 )。这样一来,Product表的product_id(商品编号)列、product_name(商品名称)列和product_type(商品种类)列就都成了必须输入的项目。另外,在创建Product表的CREATETABLE语句的后面,还有下面这样的记述。PRIMARY KEY (product_id)这是用来给product_id列设置主键约束的。所谓键,就是在指定特定数据时使用的列的组合。键种类多样,主键(primary key)就是可以特定一行数据的列B。也就是说,如果把product_id列指定为主键,就可以通过该列取出特定的商品数据了。反之,如果向product_id列中输入了重复数据,就无法取出唯一的特定数据了(因为无法确定唯一的一行数据)。这样就可以为某一列设置主键约束了。

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/1/94307.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息