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

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 文档。
------------------------------------------------------------------------
请问怎么能让我的数据库恢复正常?
...全文
36 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
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')

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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