1. 创建数据表

1.1 语法形式

创建数据表前,应指定使用语句“USE <数据库名>”指定操作在哪个数据库中进行。
创建数据表语句为CREATE TABLE,语法如下:

  1. create teble table_name(
  2. 字段名1 数据类型 [列级别约束条件] [默认值],
  3. 字段名2 数据类型 [列级别约束条件] [默认值],
  4. ....
  5. [表级别约束条件]
  6. );

eg.

  1. CREATE TABLE IF NOT EXISTS `student`(
  2. `stu_id` INT NOT NULL AUTO_INCREMENT,
  3. `stu_name` VARCHAR(10) NOT NULL,
  4. `age` int NOT NULL,
  5. `birthday` DATETIME,
  6. PRIMARY KEY ( `stu_id` )
  7. )ENGINE=InnoDB DEFAULT CHARSET=utf8;

实例解析:

  • 如果你不想字段为NULL可以设置字段的属性为NOT NULL, 在操作数据库时如果输入该字段的数据为NULL,就会报错。
  • AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1。
  • PRIMARY KEY关键字用于定义列为主键。 您可以使用多列来定义主键,列间以逗号分隔。
  • ENGINE 设置存储引擎,CHARSET 设置编码。

2.数据类型

2.1数值类型

数据表基本操作 - 图1

2.2日期和时间类型

数据表基本操作 - 图2

2.3字符串类型

数据表基本操作 - 图3
注意:char(n) 和 varchar(n) 中括号中 n 代表字符的个数,并不代表字节个数,比如 CHAR(30) 就可以存储 30 个字符。
CHAR 和 VARCHAR 类型类似,但它们保存和检索的方式不同。它们的最大长度和是否尾部空格被保留等方面也不同。在存储或检索过程中不进行大小写转换。
BINARY 和 VARBINARY 类似于 CHAR 和 VARCHAR,不同的是它们包含二进制字符串而不要非二进制字符串。也就是说,它们包含字节字符串而不是字符字符串。这说明它们没有字符集,并且排序和比较基于列值字节的数值值。
BLOB 是一个二进制大对象,可以容纳可变数量的数据。有 4 种 BLOB 类型:TINYBLOB、BLOB、MEDIUMBLOB 和 LONGBLOB。它们区别在于可容纳存储范围不同。
有 4 种 TEXT 类型:TINYTEXT、TEXT、MEDIUMTEXT 和 LONGTEXT。对应的这 4 种 BLOB 类型,可存储的最大长度不同,可根据实际情况选择。

3.删除数据表

3.1语法

  1. DROP TABLE table_name;

4.插入数据

4.1语法

  1. INSERT INTO table_name ( field1, field2,...fieldN )
  2. VALUES
  3. ( value1, value2,...valueN );

5.查询数据

5.1语法

  1. SELECT column_name,column_name
  2. FROM table_name
  3. [WHERE Clause]
  4. [LIMIT N][ OFFSET M]
  • 查询语句中你可以使用一个或者多个表,表之间使用逗号(,)分割,并使用WHERE语句来设定查询条件。
  • SELECT 命令可以读取一条或者多条记录。
  • 你可以使用星号(*)来代替其他字段,SELECT语句会返回表的所有字段数据
  • 你可以使用 WHERE 语句来包含任何条件。
  • 你可以使用 LIMIT 属性来设定返回的记录数。
  • 你可以通过OFFSET指定SELECT语句开始查询的数据偏移量。默认情况下偏移量为0。

5.1.1 WHERE 子句

1.语法

  1. SELECT field1, field2,...fieldN FROM table_name1, table_name2...
  2. [WHERE condition1 [AND [OR]] condition2.....
  • 查询语句中你可以使用一个或者多个表,表之间使用逗号,分割,并使用WHERE语句来设定查询条件。
  • 你可以在 WHERE 子句中指定任何条件。
  • 你可以使用 AND 或者 OR 指定一个或多个条件。
  • WHERE 子句也可以运用于 SQL 的 DELETE 或者 UPDATE 命令。
  • WHERE 子句类似于程序语言中的 if 条件,根据 MySQL 表中的字段值来读取指定的数据。

数据表基本操作 - 图4

6.更新数据

6.1语法

  1. UPDATE table_name SET field1=new-value1, field2=new-value2
  2. [WHERE Clause]
  • 你可以同时更新一个或多个字段。
  • 你可以在 WHERE 子句中指定任何条件。
  • 你可以在一个单独表中同时更新数据。

7.删除数据

7.1语法

  1. DELETE FROM table_name [WHERE Clause]
  • 如果没有指定 WHERE 子句,MySQL 表中的所有记录将被删除。
  • 你可以在 WHERE 子句中指定任何条件
  • 您可以在单个表中一次性删除记录。