Habituellement, nous n'avons entendu parler que d'un seul type d'objets ASP tel que ADO, mais il existe un objet d'accès ASP peu connu spécifiquement pour SQL Server dans ASP, qui est l'objet SQLOLE.SQLServer. SQLOLE.SQLServer peut accéder directement aux propriétés système de SQL Server. L'instruction Set oSQLServer = CreateObject ("SQLOLE.SQLServer") générera un objet serveur SQL Server.
---- Pour afficher la collection de bases de données sur ce serveur, l'instruction disponible :
Pour chaque SQLDB dans oSQLServer.Databases
Response.Write SQLDB.Name 'listera toutes les bases de données, telles que les Pubs, etc.
Suivant
---- Pour afficher la collection de tables de données dans une base de données (telle que la base de données PUBS), vous pouvez utiliser l'instruction suivante :
pubDatabase=oSQLServer.Databases("pubs")
'oSQLServer est l'objet serveur SQL Server créé précédemment
Pour chaque DBTable dans pubDatabase.Tables
Réponse.WriteDBTable.Name
Suivant
---- L'instruction suivante listera les vues de données dans la base de données (base de données PUBS)
pubDatabase =oSQLServer.Databases("pubs")
'oSQLServer est l'objet serveur SQL Server créé précédemment
Pour chaque DBView dans pubDatabase.Views
Réponse.Écrire DBView.Text
Suivant
---- L'instruction suivante listera les procédures stockées dans la base de données (base de données PUBS)
pubDatabase =oSQLServer.Databases("pubs")
'oSQLServer est l'objet serveur SQL Server créé précédemment
Pour chaque DBSP dans pubDatabase.StoredProcedures
Réponse.Écrire DBSP.Texte
Suivant
---- Le résultat de l'exécution du programme (obtenir le nom de la table de données) :
---- Obtenir le résultat du processus stocké :
---- Un petit exemple complet de code source est joint (lecteurs avec d'autres fonctions je peux l'ajouter).
< %@ LANGUE = VBScript % >
< HTML >
<TÊTE>
< META NAME="GÉNÉRATEUR" Contenu=
"Microsoft Developer Studio" >
< META HTTP-EQUIV="Content-Type"
content="text/html; charset=gb2312" >
< TITRE >< /TITRE >
< /TÊTE >
< %
En cas d'erreur, reprendre ensuite
Faible oSQLServer
Définir oSQLServer = CreateObject ("SQLOLE.SQLServer")
strServeur = "dép"
strLogin = "sa"
motStrPwd = ""
oSQLServer.Connect strServer, strLogin, strPwd
%>
<CORPS BGCOLOR=#ffffff>
Liste de base de données
< SELECT NAME="Base de données" >
<%
Pour chaque SQLDB dans oSQLServer.Databases
Si ce n'est pas SQLDB.SystemObject alors
Réponse.Écrire "< OPTION VALUE=
""" & SQLDB.Nom & """ >" & SQLDB.Name
& " "
Fin si
Suivant
Définir oSQLServer = Rien
%>
< /SELECT>
< /CORPS >
< /HTML>