SQL Server修改表的时候出现错误:未更新任何行

如图,这一列的数据类型是datetime。下面几行都是由2007改成2014的,为什么就第一行不行呢?第一行改的时候出现错误:未更新任何行,错误源:Provider,错误信息:截断字符串或二进制数据。
最新回答
让月色乏味

2024-10-31 04:20:12

当对sql数据库中的表进行编辑时,会出现“未更新任何行”的错误,这是可能是因为插入了一条与之前相同的记录或者不满足某种约束类型,这时数据库当然不能更新任何行了。

此时应该检查一下是否输入了错误的数据,并与之前已输入的数据记录进行比较,确定正确之后再录入数据。若仍有“未更新任何行”的错误并且保存不了这个表,也退不出去,这时就需要用

sql语句
来删除已录入的错误数据。

扩展资料

Sql 修改表结构的操作

1、添加表字段

alter table 表名 add  字段名 类型(值)

示例:alter table   user  add name varchar(40);

2、删除表字段

alter table 表名 drop  字段名

示例: alter table user drop name;

3、字段名更名

alter table 表名 rename 老字段名 to 新字段名

示例:alter table  user  rename oldname to newname;

4、更改字段类型

alter table 表名 alter 字段 类型;

示例:alter table user alter name varchar(50);

寂寞在蔓延

2024-10-31 05:59:38

截断字符串或二进制数据。这句说的是你的值超过范围。跟下面几位说的一样。但不一定都是这样的。
你看下你的表有没有主键,没有的话,你看下你第一个字段的值有没有更其他行的第一个字段值重复了,如果重复往往就没法直接改。只能用sql语句删除了,重新添加。
风与纸片人

2024-10-31 04:14:00

update Table set IssueDate=replace(IssueDate,'2007','2014')
原諒莪暸

2024-10-31 04:46:30

这个错误是值长度超出了范围……你看看这个字段是否有什么限制……你可以把这个表的创建过程我发给我看看
追问
肯定没有超,数据类型是DataTime。下面几行的都可以改,就这行不行。空格什么的分隔符我都注意了,完全没问题。但就是改不了。
追答
你把它改成2014-05-01试试
追问
不行,不是改成什么行不行而是根本就不能改。
追答
那你这条记录跟别的表中记录有没有关联?
本性难移

2024-10-31 06:33:47

将数据库表这列的长度调大一点
追问
数据类型是datetime。而且另外几行都可以改,就这行不行。