Help for "Record/key deleted"(50分)

B

bobyin

Unregistered / Unconfirmed
GUEST, unregistred user!
最近我在写一个基于MS SQL Server的C/S程序时出现以下问题:
用datasourse,ttable,dbgrid控件建立了一个最简单的数据库浏览程序,
在运行时,浏览到数据库末端时出现以下错误:"Record/Key deleted",
数据库中午BOLB字段.我改用SQL Explorer浏览事业发生同样问题.
希望高手帮助解决.
 
我认为:
1 检查你的BDE和SQL-LINKS安装是否正确
2 检查SQL -SERVER安装是否正确
3 如果以上正确,请写出你的数据库结构
 
可能是BDE或Desktop的错误把数据库重建一下
 
我确信BDE和SQL-Links安装正确.我分别用BDE Administrator建立了两个别名,
一个用的是Native Driver,另一个为ODBC Driver,结果一样.但使用Database
DeskTop 就无此问题.
要浏览的Table为Access中建立的,由ODBC导出至SQL Server.


 
将TableName加上‘dbo.'试试
 
我要在所有有关数据库(C/S模式)的问题中大声呼吁:
绝对不要用TTable!
 
刚学了一招:检查并调整一下Language Driver的设置
 
似乎与MS SQLSERVER 处理BLOB字段有关系,我也出过类似的毛病
千方百计解决也未得其果,你的SQL SERVER加了补丁了吗?
如果是未加补丁的,或是加了 SERVICE PACK#3,建议您去
微软的FTP
ftp.microsoft.com/bussys/sql/
里找到 service pack#4 下载 文件名是65sp4x86.exe
大概就没问题了
 
这个问题我刚好碰到,你是在程序写数据
的时候意外中断了超做,例如强行关掉程序,
用Database Desktop打开数据库,清空所有
记录,保证见效!别忘了给我加分,我穷得快过
不了日子了. :-(
 
不要用TTable. (我和dwwang一样态度,强烈呼吁)
按唐晓峰的方法可以搞定,但只是暂时,TTable就像个炸弹,没准那天
再给你出乱子,再加上DBGrid简直是要让你的程序玩完.
所以:不用TTable,不用DBGrid
 
为什么不要用Table呢?
{:|
 
唐晓锋穷得过不了日子也别把人家的数据全部清空呀?
我觉得万无一失的办法是在做任何修改以前先把数据库备份,这最重要。
可是数据库已经出乱子啦,怎么办,很简单,
编个象下面这样的小程序:
建立源和目的数据库,不用说,源就是坏了的数据库,
建立一个循环,把源中的每一条记录拷贝到目的数据库,
在拷贝语句前后应该加Try和Except
当到达出错的记录时,目的数据库Post存盘。
这样再试其他可能。
 
非常感谢各位网友的支持
我的SQL SERVER为Pack 4.
我的数据库只能改写,绝对不可能清空;而且我也认为即使清空数据库可以解决问题也不是最终解决之道,我决定不用Table.
谢谢大家.
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
顶部