数据库( MySQL )建表 用命令进入 MySQL 客户端。 mysql -uroot -p123123 -h127.0.0.1 创建数据库hdfsdb(格式默认为utf8),并在数据库内建立表student,其表结构如下: 名 类 状态 stu_no int 主键 stu_name varchar(20) 学生姓名 stu_age int 学生年龄 在表内插入数据。 stu_no stu_name stu_age 202001 zhangsan 18 202002 lisi 19 202003 wangwu 20
时间: 2025-07-14 15:47:24 浏览: 5
<think>好的,我现在需要帮助用户解决如何在MySQL中创建数据库和表,并插入数据的问题。首先,用户明确要求使用命令行客户端,所以我要确保给出的步骤都是基于命令行的,而不是图形化工具。
首先,创建数据库hdfsdb,并且指定UTF-8编码。我记得在MySQL中,创建数据库时可以用CHARACTER SET来指定编码,所以正确的命令应该是CREATE DATABASE hdfsdb DEFAULT CHARACTER SET utf8;。这里可能需要确认一下用户是否需要使用utf8mb4,但用户提到的是UTF-8,所以用utf8应该没问题。
接下来,用户需要进入这个数据库,使用USE hdfsdb;命令。这一步很重要,否则之后创建表可能会选错数据库。
然后是创建student表,包含stu_no(主键、int)、stu_name(varchar(20))、stu_age(int)。主键的设置可以通过PRIMARY KEY (stu_no)来实现。这里需要注意字段类型是否正确,varchar的长度是否符合要求,以及主键是否正确定义。
插入数据部分,用户需要插入三条记录。应该使用INSERT INTO语句,指定字段名或者按顺序提供值。这里可能需要提醒用户注意字段顺序和数据类型匹配,但用户给出的示例数据似乎没问题,所以给出具体的INSERT语句即可。
还需要考虑用户可能对MySQL命令行不熟悉,所以每个步骤需要详细说明,比如如何启动命令行客户端,如何执行命令。可能需要提醒用户在每条命令后加分号,以及如何退出MySQL。
另外,用户提供的引用中有提到NOT NULL约束和自增约束,但用户的问题中没有提到这些,所以可能不需要加入。但如果有机会的话,可以简要提到这些扩展选项,供用户参考。
验证部分,用户可能需要确认数据是否插入成功,所以给出SELECT * FROM student;的查询命令是有帮助的。
最后,确保整个过程的命令正确,没有语法错误。比如CREATE TABLE语句中的逗号是否正确,是否缺少括号等。同时,检查字符集设置是否正确,主键是否正确指定。
总结步骤:创建数据库、切换数据库、创建表、插入数据、验证。每一步给出对应的命令,并解释关键点,比如CHARACTER SET和PRIMARY KEY的作用。如果有常见错误,比如忘记分号或者字符集不匹配,也可以提出来,但用户的问题中没有提到错误处理,所以可能不需要深入。
现在将这些整理成结构化的回答,确保符合用户的要求:使用中文,代码块用正确格式,引用相关部分时添加标识。同时,生成相关问题,帮助用户进一步学习。</think>### 分步操作指南
1. **登录MySQL命令行客户端**
在终端输入以下命令并输入密码:
```bash
mysql -u root -p
```
2. **创建UTF-8编码的数据库**
执行以下SQL语句创建数据库`hdfsdb`:
```sql
CREATE DATABASE hdfsdb DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
```
- `DEFAULT CHARACTER SET utf8` 确保数据库使用UTF-8编码
- `COLLATE utf8_general_ci` 指定校对规则(不区分大小写)[^3]
3. **切换到目标数据库**
```sql
USE hdfsdb;
```
4. **创建student表**
```sql
CREATE TABLE student (
stu_no INT PRIMARY KEY,
stu_name VARCHAR(20),
stu_age INT
);
```
- `PRIMARY KEY` 定义主键约束
- `VARCHAR(20)` 表示可变长度字符串,最大20字符[^1]
5. **插入示例数据**
逐条插入三条记录:
```sql
INSERT INTO student (stu_no, stu_name, stu_age) VALUES
(1001, '张三', 18),
(1002, '李四', 19),
(1003, '王五', 20);
```
或使用连续插入语法:
```sql
INSERT INTO student VALUES
(1001, '张三', 18),
(1002, '李四', 19),
(1003, '王五', 20);
```
6. **验证操作**
```sql
SELECT * FROM student;
```
阅读全文
相关推荐



















