如何判断一个SQL的DATABASE是否存在(50分)

  • 主题发起人 主题发起人 小天
  • 开始时间 开始时间

小天

Unregistered / Unconfirmed
GUEST, unregistred user!
我用的后台数据库是SQL 7.0,请问有什么办法可以在程序中判断一个
database是否存在呢?
 
具体的函数我给忘了,可以这样得到。
利用SQL Server的自动生成SQL 语句的功能,对一个表生成一个SQL文件,
在这个生成的SQL语句序列中,生成表的前面的语句就是先判断是否存在这个
表,如果有则删除之类的。
将这个SQL提供的函数记下来,放到你的TQuery中,指定一个返回值就Ok了。
 
建议使用DELPHI的异常。
即连接一下这个数据库,发生异常就说明可能数据库已存在!
 
Try
Begin
table1.Close;
table1.TableName:=数据表名;
table1.Open;
end
except
showmessage('表不存在');
end;

给我分吧!:):)
 
Try
Database1.Connected:=True;
except
showmessage('数据库错误');
end;

错误有两种可能:1.数据库不存在;2.数据库参数设置错误.
 
思路可以,方法不严密。在exept 中在判断一下不就成了?是否有字串not exist
用pos:-)
 
用Database1.Connected去探一探是否比较好一点。
 
用sp_helpdb得到所有数据库, 然后遍历看有没有所要的数据库就可以了:-)
 
可参考下面的程序:
Database.Close;
Database.AliasName:=aliasname;

try
Database.Open;
except
showmessage('数据库不存在!');
end;
 
用sp_helpdb或直接select * from sysdatabases where name="Your DataBase Name"
 
fx的办法好,不过不知道是否每种数据库都有这个sysydatabase.
 
接受答案了.
 
后退
顶部