sql数据库表中不能直接修改删除,一直报错!!!

吾将上下侕求索 2014-10-22 05:05:46
sql数据库表中的数据,不能直接在企业管理器表中删除,修改,不然会提示错误:
未更新任何行。

未提交***行数据。

错误源:Microsoft.SqlServer.Management.Data。

错误类型:参数类型"sde.sys.geometry“无效。

参数值:value。

请更正错误并重试,或按Esc取消更改。
...全文
2598 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
猫SirSir 2017-04-21
  • 打赏
  • 举报
回复
我刚刚解决了。。应该是有自定义列的问题。比如地理数据库。用sql语句可以修改。
猫SirSir 2017-04-15
  • 打赏
  • 举报
回复
楼主解决了没呢。。。
还在加载中灬 2014-10-25
  • 打赏
  • 举报
回复
因为,你所有的表都不能修改,我想很可能是你的SQLSERVER出问题了~~
  • 打赏
  • 举报
回复
引用 19 楼 ky_min 的回复:
引用
这个应该不行,同一数据库下的其他表也是不能修改
我想这个~~ 找不出原因,我想重装SQLSERVER 应该可以解决~~
还在加载中灬 2014-10-24
  • 打赏
  • 举报
回复
引用
这个应该不行,同一数据库下的其他表也是不能修改
我想这个~~ 找不出原因,我想重装SQLSERVER 应该可以解决~~
中国风 2014-10-24
  • 打赏
  • 举报
回复
引用 4 楼 lmn456 的回复:
[quote=引用 3 楼 roy_88 的回复:] 在查询分析器里能不能操作? 如果可以,那估计是表有约束,看对象应该是自定义类型,数据库应该没这样命名的类型 --查看一下有没有记录 SELECT * FROM sysobjects WHERE name LIKE 'geometry'
新建查询,试了一下,没有记录;开始不能操作是在对象资源管理器里边,直接打开数据库,找到里边的表操作的。[/quote]\ 少加上%号.看命明应该是系统接口出现DDL丢失,可以尝试重装SQL引擎 SELECT * FROM sysobjects WHERE name LIKE '%geometr%'
  • 打赏
  • 举报
回复
引用 13 楼 Tiger_Zhao 的回复:
看这个 sql 错误 未更新行1中的数据 错误源:.net sqlclient data provider
不能改类型,已修改就报错
  • 打赏
  • 举报
回复
引用 14 楼 xiaoxiangqing 的回复:
跟表的数据类型有关,如果列为bit类型,那可能输true或者false
我查看了一下,原来机子上的数据库,表中sys类型为int,现在出问题的这个sys类型为geometry,求解?
  • 打赏
  • 举报
回复
引用 12 楼 ky_min 的回复:
居然没有触发器~ 我试了下,其它可以会报错这种错误的可能性,但都没有结果 我想到一可能行的解决方案,就是,倒表~~ 你把这些数据转存到临时表或新建同表结构的表,然后那这个表删了,然后重建,再倒回来~~
这个应该不行,同一数据库下的其他表也是不能修改
xiaoxiangqing 2014-10-23
  • 打赏
  • 举报
回复
跟表的数据类型有关,如果列为bit类型,那可能输true或者false
还在加载中灬 2014-10-23
  • 打赏
  • 举报
回复
居然没有触发器~ 我试了下,其它可以会报错这种错误的可能性,但都没有结果 我想到一可能行的解决方案,就是,倒表~~ 你把这些数据转存到临时表或新建同表结构的表,然后那这个表删了,然后重建,再倒回来~~
  • 打赏
  • 举报
回复
引用 8 楼 ky_min 的回复:
右击你的数据库 执行以下查询,可以知道你的这个表有哪些触发器
select   *   from   sysobjects   where   xtype='TR'   and   parent_obj=object_id('你的表名')
两个查询都没有结果
  • 打赏
  • 举报
回复
引用 9 楼 ky_min 的回复:
更延伸点,可以知道你的这个表有哪些触发器或约束,知道了就可以根据不需要的情况,取消掉它们,使你的操作正常 以下查看约束
exec sp_helpconstraint [你的表名]
只有这个有结果: constraint_typ constraint_name delete_action update_action status_enabled status_for_replication constraint_keys CHECK on column Shape g9_ck (n/a) (n/a) Enabled Is_For_Replication ([SHAPE].[STSrid]=(0)) PRIMARY KEY (clustered) R14_pk (n/a) (n/a) (n/a) (n/a) OBJECTID
还在加载中灬 2014-10-22
  • 打赏
  • 举报
回复
更延伸点,可以知道你的这个表有哪些触发器或约束,知道了就可以根据不需要的情况,取消掉它们,使你的操作正常 以下查看约束
exec sp_helpconstraint [你的表名]
还在加载中灬 2014-10-22
  • 打赏
  • 举报
回复
右击你的数据库 执行以下查询,可以知道你的这个表有哪些触发器
select   *   from   sysobjects   where   xtype='TR'   and   parent_obj=object_id('你的表名')
还在加载中灬 2014-10-22
  • 打赏
  • 举报
回复
SELECT * FROM sde.sys.sysobjects WHERE name LIKE 'geometry'
  • 打赏
  • 举报
回复
引用 2 楼 Tiger_Zhao 的回复:
估计有触发器在 delete、update 上,而且该触发器用到的 sde.sys.geometry 类型还不存在,触发器根本无法执行,所以删除、修改完全无法进行。
高人,我该如何处理?
还在加载中灬 2014-10-22
  • 打赏
  • 举报
回复
引用 4 楼 lmn456 的回复:
[quote=引用 3 楼 roy_88 的回复:] 在查询分析器里能不能操作? 如果可以,那估计是表有约束,看对象应该是自定义类型,数据库应该没这样命名的类型 --查看一下有没有记录 SELECT * FROM sysobjects WHERE name LIKE 'geometry'
新建查询,试了一下,没有记录;开始不能操作是在对象资源管理器里边,直接打开数据库,找到里边的表操作的。[/quote] 你试下 SELECT * FROM sde.sys.sysobjects
  • 打赏
  • 举报
回复
引用 3 楼 roy_88 的回复:
在查询分析器里能不能操作? 如果可以,那估计是表有约束,看对象应该是自定义类型,数据库应该没这样命名的类型 --查看一下有没有记录 SELECT * FROM sysobjects WHERE name LIKE 'geometry'
新建查询,试了一下,没有记录;开始不能操作是在对象资源管理器里边,直接打开数据库,找到里边的表操作的。
加载更多回复(3)

22,210

社区成员

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

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