一个关于Exception的问题,一个关于数据库设计的问题(100分)

  • 主题发起人 主题发起人 夏红莉
  • 开始时间 开始时间

夏红莉

Unregistered / Unconfirmed
GUEST, unregistred user!
问题:
1. 我遇到这样的情况同是“EDBEngineError”要分
当是“Name not except on unique in this context”做处理
当是“Error Params........."另外做处理
如何解决?

2. 在Delphi中如何判断SQL SERVER数据库中是否有一指定名字的库?
 
2.table.exist,或者查系统表
1.???
 
if (E is EDBEngineError) then
if (E as EDBEngineError).Errors[0].Errorcode = eKeyViol then
begin
MessageDlg('Unable to post: Duplicate Customer ID.', mtWarning, [mbOK], 0);
Abort;
end;


仔细看一下delphi4/demos/db/dberror下的例子程序
 
CJ: 他的意思是要根据不同的"异常"做不同的处理.
(BTW: 最近可好?)
 
cakk:
re btw:不好!很不好!下星期要去做网页!我K,这玩意我不会的说。

等我明白了他的问题,问题已经被回答了:(
 
1)delphi5/demos/db/dberror下例子。
2)应该是系统存储过程sp_helpdb。
 
Var
iCount:Integer;
sMessage:String;
Begin
Try
{ Something }
Except
{ Check what type of exception was generated }
On E:EDBEngineError do
{ Ierate through the Errors array }
for iCount:=0 to E.ErrorCount-1 do
sMessage:=E.Errors[iCount].Message;
if sMessage:='Name not except on unique in this context'
then { something };
if sMessage:='Error Params.........'
then { something };
……
End;
 
请去www.inprise.com.cn,其中有这个问题的详细解释
 
第二个问题:
select 1 from master..sysdatabases where name='tablename'
 
如果是在SQL SERVER上一指定DATABASE中判斷一Table是否存在,應怎樣寫?




 
to jeff.sheng:
select 1 from sysobjects where type='U' and name='tablename'

又:
更正:
第二个问题:
select 1 from master..sysdatabases where name='databasename'
 
多人接受答案了。
 
后退
顶部