四-数据库的操作

数据库小命令

SHOW DATABASES; -- 显示所有数据库

CREATE DATABASE cqny; -- 新建数据库

# drop 删除(drop database 数据库名)
# after 修改(after database 数据库名)
# create 创建(create database 数据库名)

# 图形化下:新建数据库 -字符集:utf8mb4 -规则:utf8mb4_general_ci

-- 创建名为data3的数据库,设置字符集为utf8mb4,校对规则为utf8mb4_general_ci:
CREATE DATABASE bookstore
CHARACTER SET utf8mb4
COLLATE utf8mb4_general_ci;

常见数据类型:

1、字符型

中文汉字(2字节)

英文字母、数字、标点符号(1个字节)

(1)char(10)

固长:例如,如果你定义一个 CHAR(10) 字段,那么该字段将始终占用 10 个字符的存储空间,不管你实际存储了多少字符。如果你存储的字符串不足 10 个字符,那么将用空格字符填充,以达到指定的固定长度。

  • CHAR 是用于存储固定长度字符数据的数据库数据类型。
  • (n) 表示该字段可以存储的字符数,是固定的长度。
  • 如果实际存储的数据长度不足指定长度,将使用空格字符进行填充。
  • VARCHAR 不同,CHAR 始终占用指定长度的存储空间。

(2)varchar(n)

变长:例如,如果你有一个 VARCHAR(50) 的字段,但你只存储了 “Hello”(5个字符),那么它只会占用足够存储 “Hello” 的空间,而不是整个 50 个字符的长度。这有助于有效利用存储空间,特别是当你处理变长数据时。

  • VARCHAR 是可变长度字符串的数据类型。
  • (n) 表示该字段可以存储的最大字符数。
  • 存储的实际数据长度可以根据内容动态变化,不会浪费存储空间。

2、数值

数值是一种用于存储数值型数据的数据类型。不同的数据库系统可能有不同的数值类型,但一般来说,以下是一些常见的数值数据类型:

  1. 整数类型(Integer Types):
    • INT(整型): 通常用于存储整数,可以是正数、负数或零。
    • TINYINT、SMALLINT、MEDIUMINT、BIGINT: 这些是不同范围的整数类型,从很小的整数到非常大的整数。
  2. 小数和浮点类型(Decimal and Floating-Point Types):
    • DECIMAL 或 NUMERIC: 用于存储精确的小数,通常用于货币等需要确切值的情况。
    • FLOAT 和 DOUBLE: 用于存储近似值的小数。FLOAT 提供较小的范围和精度,而 DOUBLE 提供更大的范围和更高的精度。
    • 例子:123.1 float(5,1)
  3. 定点数类型(Fixed-Point Types):
    • FIXED 或 DEC: 与 DECIMAL 和 NUMERIC 一样,用于存储精确的小数。

3、时间

时间数据类型用于存储与时间相关的信息。以下是一些常见的时间数据类型:

  1. DATE: 用于存储日期,不包括时间部分。通常以 ‘YYYY-MM-DD’ 格式表示。
  2. TIME: 用于存储时间,不包括日期部分。通常以 ‘HH:MM:SS’ 格式表示。
  3. DATETIME: 用于同时存储日期和时间。通常以 ‘YYYY-MM-DD HH:MM:SS’ 格式表示。
  4. TIMESTAMP: 类似于 DATETIME,但具有与时区相关的特性。通常以 ‘YYYY-MM-DD HH:MM:SS’ 格式表示。
  5. YEAR: 用于存储年份信息,可以是四位数或两位数。

这些数据类型允许数据库存储和检索与时间相关的信息。选择适当的时间数据类型取决于应用的需求。例如,如果只需要存储日期,而不关心具体时间,可以使用 DATE 数据类型。如果需要同时存储日期和时间,可以选择 DATETIME 或 TIMESTAMP。

创建表

基本三要素:

字段的定义:字段名 数据类型 是否为空

(1)图形化 null空 不是null

(2)SQL语句方式

CREATE TABLE 表名 (
列名1 数据类型1,
列名2 数据类型2,
...
);