如何知道在SQL Server7.0中已经有多少个database?(200分)

  • 主题发起人 主题发起人 hz
  • 开始时间 开始时间
H

hz

Unregistered / Unconfirmed
GUEST, unregistred user!
如何才能知道SQL Server7.0中已经存在多少个database,
且他们在磁盘上的文件名是什么(*.mdf),对应的日志文件
是什么(*.ldf)。
另外如何才能知道现在有几个人在对数据库进行操作,想提示
他们退出或强制他们退出。
 
select * from master......
 
打开SQL 的管理程序, 找到database项后点击打开就可知道有多少个database,一般会为master等多个系统自已的。
 
肯定有相应的数据字典
 
找master里sysobject表里的东西啦,然后根据utype和type两个字段查找,然后count,就可以了。
要知道对应的mdf,ldf都可以从里面知道,不过我没有try过.
 
不好意思,我记错了,应该是master.dbo.sysdatabases里面的东西,sysobjects里面注册的是
表名和StoreProc或者其他的index的名字。master.dbo.sysdatabases里面的filename就得到mdf了
 
用enterprise manager 能看到系统的数据库!对于管理员建的DATABASE在DATABASE项目中
就可以看到!
还可以通过ISql_W通过某个用户帐号也可以看到了!
 
对于看到用户数量和杀他们:
在enterprise manager中有managerment 中有current activity中有
locks/process id 是用来看用户和锁的类型的!
process info 是用来强制用户退出的!
 
enterprise manager中managerment 中current activity中process info :
提示他们退出用send message
强制他们退出用kill process
 
在Master数据库中能得到信息。
 
可参看 sql70中的sample, 利用数据库提供的管理接口得到.
 
每个数据库中有视图 SCHEMATA ,存储了当前 SQL SERVER 全部数据库的信息。
SELECT * FROM SCHEMATA 可以查看到。
 
system procedure:sp_helpdb;sp_helpfile
OK.
 
如何才能知道现在有几个人在对数据库进行操作:
Exec master..sp_who
 
如plowboy所说,系统存储过程sp_helpdb可得知database的信息,sp_helpfile过程可得知
对应的物理文件!
 
多人接受答案了。
 
后退
顶部