MySQL训练营02

一、表操作:

1.MySQL表的数据类型:

MySQL的数据类型分为3种:

  • 数值
  • 时间/日期
  • 字符/字符串

(1)数值类型:

包括:TinyInt、SmallInt、MediumInt、Int、BigInt、Float、Double、Decimal

(2)时间/日期类型:

  • 包括:DateTime、Date、TimeStamp、Time、Year。
  • 每个时间类型有一个有效值范围和一个"零"值,当指定不合法的MySQL不能表示的值时使用"零"值。
  • TimeStamp类型有专有的自动更新特性。

(3)字符/字符串类型:、

包括:Char、VarChar、Binary、VarBinary、Blob、Text、Enum和Set.

其中:

  • CHAR 和 VARCHAR 类型类似,但它们保存和检索的方式不同。它们的最大长度和是否尾部空格被保留等方面也不同。在存储或检索过程中不进行大小写转换。
  • BINARY 和 VARBINARY 类似于 CHAR 和 VARCHAR,不同的是它们包含二进制字符串而不要非二进制字符串。也就是说,它们包含字节字符串而不是字符字符串。这说明它们没有字符集,并且排序和比较基于列值字节的数值值。
  • BLOB 是一个二进制大对象,可以容纳可变数量的数据。有 4 种 BLOB 类型:TINYBLOB、BL

 

2. 创建表:

(1)表创建基础:

Create Table 表名 (列名1  数据类型1  是否空值1  默认值1,  列名2  数据类型2  是否空值2  默认值2, ........);

eg:

1 Create Table Products
2 (
3      prod_id       char(10)        not null,
4      vend_id       char(10)        not null,            
5      prod_name     char(254)       not null,
6      prod_price    decimal(8,2)    not null,
7      prod_desc     text(1000)      null  
8 );

 注意:

  • 表名,在关键字Create Table 之后给出
  • 新表的定义在圆括号之中,各列之间,用逗号分隔
  • 每列的定义:以列名开始,后面跟该列的数据类型
  • 整条建表语句,以圆括号后面的分号结束
  • 建议使用缩进格式
  • 创建的新表的表名,必须不存在,否则会出错
  • 替换现有的表,要求先删除现有表,然后再创建,而非直接替换

(2)使用Null值:

  • 每个列要么是Null列,要么是Not Null列
  • 允许Null值的列,允许在插入行时,不给出该列的值;
  • 不允许Null值的列,在插入或者更新行时,该列必须有值。
  • Null为默认设置,如果不指定Not Null,则该列就认为指定的是Null
  • 主键列必须不能Not Null

eg:

Create  Table Vendors
(
  vend_id         char(10)  Not Null,
  vend_name       char(50)  Not Null,
  vend_address    char(50)  Null,
  vend_city       char(50)  Null,
  vend_state      char(5)   ,
  vend_zip        char(10)   ,
  vend_country    char(50)  
);

关于Null:

Null值是没有值,不是空字符串""。在Not Null的列中,允许空字符串。空字符串是一个有效的值,它不是无值。Null值,用关键字Null指定,而不是空字符串。

(3)指定默认值:

默认值用关键字Default指定。

如果在插入行时,不给出这列的值,则自动使用该列的默认值

eg:

Create Table OrderItems
(
     order_num     integer         Not Null,
     pord_id       char(10)        Not Null,
     quantity      integer         Not Null    Default 1,
   price     Decimal(8, 2)  Not Null );

 

(4)自动增长:Auto_Increment

(5)设定主键:Primary(字段名)

3.用SQL语句向表中添加数据——插入行数据:

使用Insert语句,插入数据。

插入数据的几种方式:

  1. 插入完整的行
  2. 插入行的一部分
  3. 插入某些查询结果

(1)插入完整的行:

Insert Into 表名 Values(值)

eg:

猜你喜欢

转载自www.cnblogs.com/tommyngx/p/10657234.html