无法更该数据库中表的内容~~~求助

marist 2004-05-03 05:19:58
我在查询分析器中用alter table tablename drop column a 语句删除了数据库access中表data里的一列数据。刚开始无法删除,在设计表中把a列的默认值去掉后删除了该列。
可是在删除了该列之后,数据库access里的所有表均不能够添加和更改和删除数据(其他数据库也只有部分数据可以正常使用,也有些类似情况)。在表中进行更改后关闭窗口,SQL SERVER弹出一个窗口“流水模式下,事务无法启动。”
点击帮助按钮,进入帮助文档,显示“ODBC 错误 :<OS>”
------------------------------------------------------------------------
ODBC 错误:<0s>。
生成了 ODBC 错误。可能删除了与某个外键值相关的记录,或者违反了 CHECK 约束。

有关详细信息,请参见 ODBC 文档。
------------------------------------------------------------------------
请问怎么能让我的数据库恢复正常?
...全文
12 19 点赞 打赏 收藏 举报
写回复
19 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
marist 2004-05-03
好的,谢谢你,问题解决。
  • 打赏
  • 举报
回复
zjcxc 元老 2004-05-03
是正常情况,因为SQL没有把全部数据调出来,所以操作的时候会出这个提示.
  • 打赏
  • 举报
回复
marist 2004-05-03
哦,仔细想一想,以前没有在数据没全部显示的情况下修改数据,请问在数据较多时,出现“流水模式下,事务无法启动。”这样的情况正常吗?
  • 打赏
  • 举报
回复
marist 2004-05-03
该表一直都设置了主键,数据一共93行,此表已经使用了数十天,从没出现这样的问题。问题是在删除了一列之后才出现的。
  • 打赏
  • 举报
回复
zjcxc 元老 2004-05-03
数据多了就会这样.

你试试加一个主键看能否解决问题.
  • 打赏
  • 举报
回复
marist 2004-05-03
果然,拖动滚动条,把数据全部显示出来后就可以正常操作了。
可是,以前不需要这样的,不需要显示全部数据就能修改数据库。如何让数据库恢复成以前这样?
谢谢你的帮助。
  • 打赏
  • 举报
回复
zjcxc 元老 2004-05-03
原来是:“流水模式下,事务无法启动。”

这个错误的解决办法,就是拖动右边的滚动向下,直到显示完所有的记录.然后再操作就OK了.
  • 打赏
  • 举报
回复
marist 2004-05-03
因为时间比较紧,请问是否重装sql就可以解决?
  • 打赏
  • 举报
回复
zjcxc 元老 2004-05-03
如果是:
可能删除了与某个外键值相关的记录,或者违反了 CHECK 约束

那说明你要操作的记录,影响了与它有外键关联的表,这个表中的相关记录要先删除掉才能再修改.
另一个原因就是你的某字段设置了约束.


如果可以的话,将数据库发邮件到我的邮箱:zjcxc@21cn.net
  • 打赏
  • 举报
回复
marist 2004-05-03
依旧,“流水模式下,事务无法启动。”
  • 打赏
  • 举报
回复
zjcxc 元老 2004-05-03
现在的错误提示是什么?
  • 打赏
  • 举报
回复
marist 2004-05-03
我用了 alter table my_contact add ccc int identity(1,1)语句
在表my_contact中多了一列字段名为ccc的数据,可是问题依然无法解决,依然无法更改该表里的内容。怎么办?
  • 打赏
  • 举报
回复
zjcxc 元老 2004-05-03
可以是任意字段名.
  • 打赏
  • 举报
回复
marist 2004-05-03
字段名就是已被删除的列名?
  • 打赏
  • 举报
回复
zjcxc 元老 2004-05-03
--就是用这句:

alter table tablename add 字段名 int identity(1,1)
  • 打赏
  • 举报
回复
marist 2004-05-03
标识字段是什么?我是菜鸟,能说得详细一些吗?
  • 打赏
  • 举报
回复
zjcxc 元老 2004-05-03
因为你的表中有记录重复,SQL无法确定你要处理的记录属性那一条,所以出现此错误,加了标识字段后就行了.
  • 打赏
  • 举报
回复
zjcxc 元老 2004-05-03
在你的表中增加一个标识字段就可以了
  • 打赏
  • 举报
回复
zjcxc 元老 2004-05-03
update pos set status='A')
  • 打赏
  • 举报
回复
相关推荐
发帖
MS-SQL Server
加入

3.3w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
帖子事件
创建了帖子
2004-05-03 05:19
社区公告
暂无公告