| 虚拟主机域名注册-常见问题 → 数据库问题 → 数据库问题 | ||||||||||||||||||||||||||||
| 一、SQL 概述 1.1 什么是 SQL? 一种专门用来与关系型数据库交互的编程语言。 支持数据定义、数据操纵、数据查询、数据控制等功能。 虽有关键字标准(ISO/IEC 9075),但不同数据库系统(MySQL、PostgreSQL、Oracle、SQL Server 等)存在方言差异。 1.2 SQL 的主要分类
二、数据库基础概念 数据库(Database):存储数据的容器,通常包含多张表。 表(Table):结构化数据的集合,由行和列组成。 列(Column):字段,定义数据的类型(INT、VARCHAR、DATE 等)。 行(Row):记录,表中一条完整的数据。 主键(Primary Key):唯一标识一行数据的列或组合列,非空且唯一。 外键(Foreign Key):指向另一张表主键的列,用于建立表间关联。 索引(Index):加速查询的数据结构,类似书的目录。 三、数据定义语言(DDL) DDL 用于创建、修改和删除数据库对象,执行后自动提交事务(多数数据库)。 3.1 数据库操作 -- 创建数据库 CREATE DATABASE school CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; -- 修改数据库字符集 ALTER DATABASE school CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; -- 删除数据库(谨慎) DROP DATABASE school; -- 使用数据库 USE school; 3.2 表操作 创建表 CREATE TABLE student ( id INT AUTO_INCREMENT PRIMARY KEY COMMENT '学号', name VARCHAR(50) NOT NULL COMMENT '姓名', gender ENUM('男','女') DEFAULT '男' COMMENT '性别', birthday DATE COMMENT '出生日期', class_id INT COMMENT '班级ID', created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', FOREIGN KEY (class_id) REFERENCES class(id) ); 修改表结构 -- 添加列 ALTER TABLE student ADD COLUMN phone VARCHAR(20) AFTER name; -- 修改列数据类型 ALTER TABLE student MODIFY COLUMN phone VARCHAR(15); -- 修改列名 ALTER TABLE student CHANGE COLUMN phone mobile VARCHAR(15); -- 删除列 ALTER TABLE student DROP COLUMN mobile; -- 重命名表 ALTER TABLE student RENAME TO student_info; 删除表 -- 删除表结构和数据 DROP TABLE IF EXISTS student; -- 清空表数据(保留结构),不可回滚(部分数据库可) TRUNCATE TABLE student; 四、数据操纵语言(DML) DML 用于增、删、改表中的数据,通常需要显式或隐式提交事务。 4.1 插入数据 -- 单行插入 INSERT INTO student (name, gender, birthday, class_id) VALUES ('张三', '男', '2005-03-12', 1); -- 多行插入 INSERT INTO student (name, gender, birthday, class_id) VALUES ('李四', '女', '200
|
||||||||||||||||||||||||||||
| >> 相关文章 | ||||||||||||||||||||||||||||
| 没有相关文章。 | ||||||||||||||||||||||||||||






