mysql—创建表、删除和修改字段

本文介绍了如何在MySQL中创建、修改和删除表字段。首先展示了创建员工表emp的步骤,包括定义各字段的数据类型。接着演示了如何向emp表中添加image字段,修改job字段长度,删除sex字段,并将表名改为employee。最后,调整了表的字符集并更改了name字段为user_name。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本次博客带领大家学习mysql中是如何创建表、删除和修改字段的。

创建表

请添加图片描述

创建表的练习:

  • 创建一个员工表emp,选用适当的数据类型。
字段属性
id整形
name字符型
sex字符型
birthday日期型(date)
entry_date日期型(date)
job字符型
salary小数型
resume文本型
CREATE TABLE emp( id INT, `name` VARCHAR(32), sex CHAR(1), brithday DATE, entry_date DATETIME, job VARCHAR(32), salary DOUBLE, `resume` TEXT) CHARSET utf8 COLLATE utf8_bin ENGINE INNODB;

INSERT INTO emp VALUES(100,'小妖怪','男' ,'2000-11-11','2010-11-11 11:11:11','巡山','3000','大王叫我来巡山');

SELECT * FROM emp;

删除和修改字段

请添加图片描述

修改表的练习:

#员工表emp的上添加一个image列,varchar类型(哟求在resume后面)
ALTER TABLE emp 
	ADD image VARCHAR(32) NOT NULL DEFAULT ''
		AFTER RESUME;	
DESC employee;

#修改job列,使其长度为60
ALTER TABLE emp 
	MODIFY job VARCHAR(60) NOT NULL DEFAULT '';
#删除sex列。
ALTER TABLE emp DROP sex;
#表名改为employee
RENAME TABLE emp TO employee;
#修改表的字符集为utf-8
ALTER TABLE employee CHARACTER SET utf8;
#列名name修改为user_name
ALTER TABLE employee CHANGE `name` user_name VARCHAR(32) NOT NULL DEFAULT '';
### 创建学生并设置字段关系 在 MySQL创建学生并设置字段之间的关系(如主键、外键),可以通过 SQL 语句来实现。以下是具体的说明: #### 学生的设计 假设我们需要设计两个:`student` `class`,其中 `student` 存储学生的个人信息,而 `class` 存储班级的信息。为了示学生属于某个班级的一对多关系,可以在 `student` 中添加一个外键字段 `class_id` 来关联到 `class` 。 #### 创建 `class` 首先创建 `class` ,并为其指定主键: ```sql CREATE TABLE class ( class_id INT AUTO_INCREMENT, class_name VARCHAR(50) NOT NULL, PRIMARY KEY (class_id) ); ``` 这里设置了 `class_id` 字段为自增主键[^1]。 #### 创建 `student` 接着创建 `student` ,并在其内部定义主键外键: ```sql CREATE TABLE student ( stu_id INT AUTO_INCREMENT, name VARCHAR(50) NOT NULL, age INT, gender ENUM('M', 'F'), class_id INT, -- 外键字段 PRIMARY KEY (stu_id), FOREIGN KEY (class_id) REFERENCES class(class_id) ON DELETE CASCADE ); ``` 上述代码实现了以下功能: - 定义了 `stu_id` 为主键,并启用自动增长属性。 - 添加了一个名为 `class_id` 的列作为外键,该外键指向 `class` 的主键 `class_id`。 - 使用 `ON DELETE CASCADE` 级联删除选项,确保当 `class` 中的某条记录被删除时,`student` 中对应的记录也会一并删除[^4]。 #### 修改现有结构 如果已经存在一张未配置主键或外键的,则可以使用 `ALTER TABLE` 命令对其进行修改。例如,向已有中添加联合主键或者外键约束: ```sql -- 向已有的中间 student_course 添加联合主键 ALTER TABLE student_course ADD PRIMARY KEY (stu_id, cour_id); -- 向 student_course 添加对外部 course 的外键约束 ALTER TABLE student_course ADD CONSTRAINT fk_student_course_cour_id FOREIGN KEY (cour_id) REFERENCES course(cour_id); ``` 此部分展示了如何利用 `ALTER TABLE` 对现有的数据增加必要的约束条件[^3]。 #### 数据完整性保障机制 通过设定合适的主键与外键,数据库能够有效防止非法数据进入系统。比如,当尝试插入一条不匹配任何实际存在的班级编号的学生记录时,MySQL 将拒绝执行操作[^2]。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值