在傳統 ASP 應用中,常需動態列出 SQL Server 實例上的所有使用者資料庫(排除系統資料庫),供前端下拉選單選擇。
<%
Dim srv, objDB
Set srv = Server.CreateObject("SQLDMO.SQLServer")
srv.LoginTimeout = 15
srv.Connect "127.0.0.1", "lcx", "lcx"
Set objDB = Server.CreateObject("SQLDMO.Database")
%>
<SELECT name="fdatabase">
<%
For Each objDB In srv.Databases
If objDB.SystemObject = False Then
%>
<OPTION><%=objDB.Name%></OPTION>
<%
End If
Next
%>
</SELECT>
True 表示系統資料庫,False 為使用者資料庫,以此過濾。若使用 ASP.NET,可透過 SqlConnection.GetSchema("Databases") 或 SMO 以更安全、效能更佳的方式達成相同需求。