鱼C论坛

 找回密码
 立即注册
查看: 232|回复: 2

[已解决]插入数据失败

[复制链接]
发表于 2023-10-19 15:23:17 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
INSERT INTO employee (emp_no, emp_name, Sex, Dept, title, Date_hired, birthday, salary, Addr) VALUES ('002', '李四', '女 ', '人事部 ', '主任 ', '2020-06-01', '1985-03-08', 8000, '中国江苏省南京市鼓楼区'),('003', '热', '女 ', '人事部 ', '主任 ', '2020-06-01', '1985-03-08', 8000, '中国江苏省南京市鼓楼区'),('004', '吧', '女 ', '人事部 ', '主任 ', '2020-06-01', '1985-03-08', 8000, '中国江苏省南京市鼓楼区'),('005', '我', '女 ', '人事部 ', '主任 ', '2020-06-01', '1985-03-08', 8000, '中国江苏省南京市鼓楼区');
表格为
emp_no        varchar (5)        Not null        primary key        员工编号
emp_name        varchar(10)        Not null                员工姓名
Sex        varchar (1)        Not null                性别
Dept        varchar (4)        Not null                所属部门
title        varchar (6)        Not null                职称
Date_hired        datetime        Not null                到职日
birthday        datetime        Null                生日
salary        int        Not null                薪水
Addr        varchar (50)        Null                住址
最佳答案
2023-10-19 15:24:27
问题分析:
根据提供的表格结构和插入语句,可以看出插入语句中的值与表格定义的字段类型不匹配,导致插入数据失败。

解决方案:
1. emp_no字段是varchar(5)类型,但插入语句中的值长度超过了5,需要修改插入语句中的值,使其长度不超过5。
2. Sex字段是varchar(1)类型,但插入语句中的值长度超过了1,需要修改插入语句中的值,使其长度不超过1。
3. Dept字段是varchar(4)类型,但插入语句中的值长度超过了4,需要修改插入语句中的值,使其长度不超过4。
4. title字段是varchar(6)类型,但插入语句中的值长度超过了6,需要修改插入语句中的值,使其长度不超过6。
5. Date_hired字段是datetime类型,但插入语句中的值格式不正确,需要将日期格式修改为'YYYY-MM-DD'的格式。
6. birthday字段是datetime类型,但插入语句中的值格式不正确,需要将日期格式修改为'YYYY-MM-DD'的格式。
7. Addr字段是varchar(50)类型,但插入语句中的值长度超过了50,需要修改插入语句中的值,使其长度不超过50。

修改后的插入语句如下:

INSERT INTO employee (emp_no, emp_name, Sex, Dept, title, Date_hired, birthday, salary, Addr)
VALUES ('002', '李四', '女', '人事', '主任', '2020-06-01', '1985-03-08', 8000, '中国江苏省南京市鼓楼区'),
       ('003', '热', '女', '人事', '主任', '2020-06-01', '1985-03-08', 8000, '中国江苏省南京市鼓楼区'),
       ('004', '吧', '女', '人事', '主任', '2020-06-01', '1985-03-08', 8000, '中国江苏省南京市鼓楼区'),
       ('005', '我', '女', '人事', '主任', '2020-06-01', '1985-03-08', 8000, '中国江苏省南京市鼓楼区');
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-10-19 15:24:01 | 显示全部楼层
在SQL语句中,多个值之间应该使用逗号分隔,而不是使用顿号,你的SQL语句中有多处错误。

以下是修改后的SQL语句:

[/code]sql
INSERT INTO employee (emp_no, emp_name, Sex, Dept, title, Date_hired, birthday, salary, Addr)
VALUES ('002', '李四', '女', '人事部', '主任', '2020-06-01', '1985-03-08', 8000, '中国江苏省南京市鼓楼区'),
       ('003', '热', '女', '人事部', '主任', '2020-06-01', '1985-03-08', 8000, '中国江苏省南京市鼓楼区'),
       ('004', '吧', '女', '人事部', '主任', '2020-06-01', '1985-03-08', 8000, '中国江苏省南京市鼓楼区'),
       ('005', '我', '女', '人事部', '主任', '2020-06-01', '1985-03-08', 8000, '中国江苏省南京市鼓楼区');
[/code]

值得注意的一点是,在'女'这个值后面有一个空格,这可能会导致数据插入时出现问题,可以去掉空格。另外,请确保日期和时间类型的值符合数据库所需的格式。

球一个最佳答案谢谢啦!这对我非常重要!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-10-19 15:24:27 | 显示全部楼层    本楼为最佳答案   
问题分析:
根据提供的表格结构和插入语句,可以看出插入语句中的值与表格定义的字段类型不匹配,导致插入数据失败。

解决方案:
1. emp_no字段是varchar(5)类型,但插入语句中的值长度超过了5,需要修改插入语句中的值,使其长度不超过5。
2. Sex字段是varchar(1)类型,但插入语句中的值长度超过了1,需要修改插入语句中的值,使其长度不超过1。
3. Dept字段是varchar(4)类型,但插入语句中的值长度超过了4,需要修改插入语句中的值,使其长度不超过4。
4. title字段是varchar(6)类型,但插入语句中的值长度超过了6,需要修改插入语句中的值,使其长度不超过6。
5. Date_hired字段是datetime类型,但插入语句中的值格式不正确,需要将日期格式修改为'YYYY-MM-DD'的格式。
6. birthday字段是datetime类型,但插入语句中的值格式不正确,需要将日期格式修改为'YYYY-MM-DD'的格式。
7. Addr字段是varchar(50)类型,但插入语句中的值长度超过了50,需要修改插入语句中的值,使其长度不超过50。

修改后的插入语句如下:

INSERT INTO employee (emp_no, emp_name, Sex, Dept, title, Date_hired, birthday, salary, Addr)
VALUES ('002', '李四', '女', '人事', '主任', '2020-06-01', '1985-03-08', 8000, '中国江苏省南京市鼓楼区'),
       ('003', '热', '女', '人事', '主任', '2020-06-01', '1985-03-08', 8000, '中国江苏省南京市鼓楼区'),
       ('004', '吧', '女', '人事', '主任', '2020-06-01', '1985-03-08', 8000, '中国江苏省南京市鼓楼区'),
       ('005', '我', '女', '人事', '主任', '2020-06-01', '1985-03-08', 8000, '中国江苏省南京市鼓楼区');
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-1 19:53

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表