sqlserver2008 更新字段问题

EVAN_QIN 2014-01-03 11:55:47
最近发现一个奇怪的问题:
在SQLSERVER2008的一张表中,新增了一个字段,不管是整形还是字符型,使用update 更新此新增的字段时,提示:已更新1行;但再SELECT查询,发现没有更新;对于该表的其他原有的字段,update 更新正常.
有没有哪位大虾知道是啥原因?
...全文
153 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
最爱午夜 2014-01-08
  • 打赏
  • 举报
回复
应该不是无效问题,可能是你更新时,条件不满足,还有可能是你更新后查询不满足条件或者排序错误,所以导致数据没有看到。
發糞塗牆 2014-01-07
  • 打赏
  • 举报
回复
是不是没有更新元数据的原因?
EVAN_QIN 2014-01-07
  • 打赏
  • 举报
回复
之前列出的表的字段是原有的字段,update 无问题。 现在新增加一字段:c_new_col varchar(10), 对此字段进行更新,则无效。 没办法了,可能是SQLSERVER2008内部的原因吧,只有重新建表,导入原数据,才解决问题。
LongRui888 2014-01-03
  • 打赏
  • 举报
回复
引用 5 楼 EVAN_QIN 的回复:
[quote=引用 4 楼 yupeigu 的回复:] [quote=引用 3 楼 EVAN_QIN 的回复:] [quote=引用 2 楼 yupeigu 的回复:] 另外,就是这个表上是否有触发器
没有触发器,数据类型也都正常. 只要是新增加的字段,不管是什么类型,update 都没有用.[/quote] 有表的,定义语句不[/quote] create table t1 ( c_id uniqueidentifier not null, c_tid uniqueidentifier null, c_eid uniqueidentifier null, c_inst_id uniqueidentifier null, c_send_from varchar(64) collate Chinese_PRC_CI_AS null, c_send_to varchar(64) collate Chinese_PRC_CI_AS null, c_send_body nvarchar(2048) collate Chinese_PRC_CI_AS null, c_send_date datetime null, c_send_user uniqueidentifier null, c_reply_status smallint null, c_send_method tinyint null, c_send_type tinyint null, c_feedback_tel varchar(64) null, c_feedback_time datetime null, c_feedback_status tinyint null, c_feedback_content nvarchar(2048) null, c_sid uniqueidentifier null, c_fid uniqueidentifier null, c_sound_path nvarchar(256) null, c_db_create_date datetime not null, c_db_create_id uniqueidentifier not null, c_db_last_update_date datetime not null, c_db_last_update_id uniqueidentifier not null, c_db_status smallint null default 0, constraint PKt1 primary key nonclustered (c_id) with fillfactor= 90 ) on "PRIMARY"[/quote] 你update的哪一列,没有变化
EVAN_QIN 2014-01-03
  • 打赏
  • 举报
回复
引用 4 楼 yupeigu 的回复:
[quote=引用 3 楼 EVAN_QIN 的回复:] [quote=引用 2 楼 yupeigu 的回复:] 另外,就是这个表上是否有触发器
没有触发器,数据类型也都正常. 只要是新增加的字段,不管是什么类型,update 都没有用.[/quote] 有表的,定义语句不[/quote] create table t1 ( c_id uniqueidentifier not null, c_tid uniqueidentifier null, c_eid uniqueidentifier null, c_inst_id uniqueidentifier null, c_send_from varchar(64) collate Chinese_PRC_CI_AS null, c_send_to varchar(64) collate Chinese_PRC_CI_AS null, c_send_body nvarchar(2048) collate Chinese_PRC_CI_AS null, c_send_date datetime null, c_send_user uniqueidentifier null, c_reply_status smallint null, c_send_method tinyint null, c_send_type tinyint null, c_feedback_tel varchar(64) null, c_feedback_time datetime null, c_feedback_status tinyint null, c_feedback_content nvarchar(2048) null, c_sid uniqueidentifier null, c_fid uniqueidentifier null, c_sound_path nvarchar(256) null, c_db_create_date datetime not null, c_db_create_id uniqueidentifier not null, c_db_last_update_date datetime not null, c_db_last_update_id uniqueidentifier not null, c_db_status smallint null default 0, constraint PKt1 primary key nonclustered (c_id) with fillfactor= 90 ) on "PRIMARY"
LongRui888 2014-01-03
  • 打赏
  • 举报
回复
引用 3 楼 EVAN_QIN 的回复:
[quote=引用 2 楼 yupeigu 的回复:] 另外,就是这个表上是否有触发器
没有触发器,数据类型也都正常. 只要是新增加的字段,不管是什么类型,update 都没有用.[/quote] 有表的,定义语句不
EVAN_QIN 2014-01-03
  • 打赏
  • 举报
回复
引用 2 楼 yupeigu 的回复:
另外,就是这个表上是否有触发器
没有触发器,数据类型也都正常. 只要是新增加的字段,不管是什么类型,update 都没有用.
LongRui888 2014-01-03
  • 打赏
  • 举报
回复
另外,就是这个表上是否有触发器
LongRui888 2014-01-03
  • 打赏
  • 举报
回复
是否数据类型有问题呢
KeepSayingNo 2014-01-03
  • 打赏
  • 举报
回复
你不用UPDATE,直接对表进行编辑前200行,然后编辑你说的这列的数据,再查下看看

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧