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

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 文档。
------------------------------------------------------------------------
请问怎么能让我的数据库恢复正常?
...全文
120 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')
代码下载链接: https://pan.quark.cn/s/a4b39357ea24 用户账户控制(UAC)白名单的配置 Windows7环境中 UAC(User Account Control,用户帐户控制)是由微软在Windows Vista版本中推出的一项旨在增强系统安全性的创新技术,该技术强制要求用户在执行可能干扰计算机正常运作的操作或进行更改会波及其他用户设置的变动前,必须提供相应的权限或管理员密码进行验证。通过对这些操作启动前进行授权确认,UAC能够有效阻止恶意软件及间谍软件在未获授权的状态下于计算机内进行安装或实施修改。 自从Vista版本问世以来,微软便开始推行这一全新的安全机制,可视为对系统安全防护的显著提升。尽管UAC确实能够在一定程度上对某些非法程序起到防御作用,但与此同时,这一功能也给众多用户带来了诸多不便。 因此,许多用户开始探寻是否存在类似于白名单的功能,以便将那些值得信赖的程序直接赋予运行权限。事实上,这类功能确实存在,不过微软并未将其作为标准配置提供。 网络上关于此问题的绝大多数建议都是建议禁用UAC,这种说法显然缺乏针对性,因为若用户希望禁用此功能,本就不会提出相关疑问。 通过运用微软官方发布的Microsoft Application Compatibility Toolkit 5.6版本,可以将信任的程序纳入系统白名单范畴。 获取Application Compatibility Toolkit 安装程序成功后会出现三个可执行文件 以管理员身份启动Compatibility Administrator 在Custom DataBases部分创建新的数据库,并添加一个Application Fix(在下方空白处点击右键,选择...

34,876

社区成员

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

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