当前位置: 首页 > ds >正文

数据库MySQL学习——day1(创建表与数据类型)

文章目录

  • 1. 创建表(CREATE TABLE)
    • 1.1. 创建表的基本语法:
    • 1.2. 示例:创建学生信息表
  • 2. 数据类型
    • 2.1. 常用的数据类型:
  • 3. 表约束
    • 3.1. 常见约束类型:
    • 3.2. 示例:添加约束条件
    • 3.3. 修改表添加约束:
  • 4. 总结

MySQL的配置与登录有很多大佬已经发过相关详细文章,我就不做过多赘述,这里只是对个人MySQL数据库的学习做一个记录。

1. 创建表(CREATE TABLE)

1.1. 创建表的基本语法:

CREATE TABLE 表名 (字段1 数据类型 [约束条件],字段2 数据类型 [约束条件],...[表级约束]
);
  • CREATE TABLE:用于创建新表。
  • 字段名:定义表的每个列。
  • 数据类型:指定字段存储的数据类型(如整数、字符串、日期等)。
  • 约束条件:可以为字段设置约束,如 NOT NULLDEFAULTUNIQUE 等。

1.2. 示例:创建学生信息表

CREATE TABLE student (student_id INT NOT NULL PRIMARY KEY,  -- 学生ID,主键且不能为空name VARCHAR(100) NOT NULL,           -- 姓名,不能为空age INT,                             -- 年龄,可为空birth_date DATE,                     -- 生日,日期格式gpa DECIMAL(3,2)                     -- GPA,带两位小数
);
  • student_id:整数类型,作为主键,不能为空。
  • name:字符串类型(最大100字符),不能为空。
  • age:整数类型,允许为空。
  • birth_date:日期类型,用于存储出生日期。
  • gpa:小数类型,最多3位数字,其中2位为小数。

2. 数据类型

2.1. 常用的数据类型:

  • INT :用于存储整数(没有小数部分)。如 student_id INT
  • VARCHAR(n) :用于存储变长字符串,n 指定最大字符数。适用于存储姓名、地址等文本数据。
  • DATE :用于存储日期,格式为 YYYY-MM-DD,例如 2025-01-01
  • DECIMAL(p, s) :用于存储精确的小数,p 是总位数(包括整数部分和小数部分),s 是小数部分的位数。如DECIMAL(3, 2)表示最多三位数字,两位小数。

2.2. 示例数据类型与字段:

CREATE TABLE example (column1 INT,             -- 整数类型column2 VARCHAR(50),     -- 可变长字符串,最大50字符column3 DATE,            -- 日期column4 DECIMAL(5, 2)    -- 小数类型,最多5位,2位小数
);

3. 表约束

3.1. 常见约束类型:

  • NOT NULL:确保字段不能为空。
  • DEFAULT:为字段提供默认值,如果插入数据时未提供该字段的值,数据库会使用默认值。
  • UNIQUE:确保字段的值唯一,不能重复。
  • PRIMARY KEY:指定字段为主键,主键是唯一且不能为空。
  • FOREIGN KEY:用于指定外键约束,确保字段值存在于另一个表的主键或唯一字段中。

3.2. 示例:添加约束条件

CREATE TABLE student (student_id INT NOT NULL PRIMARY KEY,       -- 主键且不能为空name VARCHAR(100) NOT NULL,                -- 姓名不能为空age INT DEFAULT 18,                        -- 年龄默认值为18email VARCHAR(100) UNIQUE                 -- 邮箱必须唯一
);
  • student_id:作为主键,不能为空。
  • name:不能为空。
  • age:默认值为18,如果插入时没有指定年龄,系统自动填充18。
  • email:邮箱字段确保每个邮箱地址唯一,不能重复。

3.3. 修改表添加约束:

如果已经创建了表,可以使用 ALTER TABLE 添加或修改字段约束。例如,添加一个NOT NULL约束:

ALTER TABLE student ADD CONSTRAINT CONSTRAINT_NAME CHECK (age > 0);

4. 总结

  • 表创建:使用 CREATE TABLE 语句来创建表并定义字段及其数据类型。
  • 数据类型:常见数据类型包括 INTVARCHARDATEDECIMAL
  • 表约束:通过使用 NOT NULLDEFAULTUNIQUE 等约束条件来确保数据的完整性和一致性。
http://www.xdnf.cn/news/1296.html

相关文章:

  • win10中打开python的交互模式
  • Ubuntu 22.04安装IGH
  • CRM系统的功能有哪些?CRM系统功能指南
  • RenderDoc 使用介绍
  • STL C++详解——priority_queue的使用和模拟实现 堆的使用
  • 高新技术申报有哪些潜在风险?如何避免?
  • AI 模型可靠性危机:DeepSeek 输出异常的技术归因与防范实践
  • 算力网络有关论文自用笔记(2)
  • L1-5、Prompt 写作中的常见误区
  • 公路路面病害检测
  • 【AI】SpringAI 第五弹:接入千帆大模型
  • 通过AI工具或模型创建PPT的不同方式详解,结合 Assistants API、DALL·E 3 等工具的功能对比及表格总结
  • 用红黑树封装出set和map
  • Pandas与NumPy高效结合使用指南
  • 利用内联注解析释差异构造多语言sql注入 -- b01lers CTF defense-in-depth
  • Linux从入门到荒废-查找文件中重复的数据
  • SSH 互信被破坏能导致 RAC 异常关闭吗
  • AI大模型:(二)2.3 预训练自己的模型
  • 管理+技术”双轮驱动工业企业能源绿色转型
  • 人工智能赋能医疗影像诊断:开启精准医疗新时代
  • Java 中 == 和 equals() 的区别
  • Pytorch实用教程(一):torch.compile计算提速
  • Linux内核之文件驱动随笔
  • 【Git】fork 和 branch 的区别
  • 狄拉克梳状函数的傅里叶变换
  • 联易融与中交第一航务工程局深化合作交流,共探创新发展新路径
  • 模型 替罪羊效应
  • react组件之间如何使用接收到的className(封装一个按钮案例)
  • Python 之 pyecharts 使用
  • 数字化赋能医药未来:柏强制药的战略布局与成果汇报