L'objet ADO Command permet d'exécuter diverses commandes sur des sources de données.
L'objet Command peut appliquer des requêtes sur une base de données et obtenir en retour des enregistrements (record) dans un jeu d'enregistrements (Recordset).
Il est également possible de manipuler la structure d'une base de données par l'intermédiaire de l'objet Command.
Le constructeur ci-dessous permet de créer un objet ADO Command.
Set Objet_Command = Server.CreateObject("ADODB.Command")
'ou
Set Objet_Command = New ADODB.Command
Désormais, il devient possible d'appliquer à cet objet ainsi créé, ses collections, propriétés ou méthodes.
Les CollectionsObjet_Command.Collection | Propriété | Méthode
| Collection |
|---|
| Description |
| Parameters |
| représente tous les objets paramètres d'un objet Command. |
| Properties |
| représente toutes les propriétés d'un objet Command |
| Propriété |
|---|
| Description |
| Set obj_Command.ActiveConnection = obj_Connection |
| indique l'appartenance à un objet Connection de l'objet en cours. |
| Objet_Command.CommandStream = "Chaîne de caractères" |
| indique le flux utilisé comme l'entrée pour un objet Command. |
| Objet_Command.CommandText = "Chaîne de caractères" |
| contient le texte d'une commande qui doit être envoyé à un fournisseur. |
| Objet_Command.CommandTimeout = Temps |
| indique le délai à appliquer lors de la tentative d'exécution d'une commande avant de déclencher l'interruption puis la génération d'un message d'erreur. |
| objet_Command.CommandType = CommandTypeEnum |
| indique le type d'un objet Command. |
| objet_Command.Dialect = GUID |
| indique le dialecte des propriétés CommandText ou Commandstream. |
| objet_Command.Name |
| retourne le nom d'un objet. |
| objet_Command.NamedParameters = True | False |
| indique si les noms de paramètres devraient être passés au fournisseur. |
| objet_Command.Prepared = True | False |
| indique s'il faut sauvegarder une version compilée d'une commande après l'exécution. |
| objet_Command.State = ObjectStateEnum |
| indique pour tous les objets applicables si l'état de l'objet est ouvert ou fermé. |
| Méthode |
|---|
| Description |
| Objet_Command.Cancel |
| annule l'exécution de l'appel d'une méthode |
| Set Objet_Parameter = Object_Command.CreateParameter(Nom, Type, ParameterDirectionEnum, Taille, Valeur) |
| crée un nouvel objet Parameter avec les propriétés spécifiées. |
| Set recordset = Objet_Command.Execute(Enregistrements_Affectés, Paramètres, Options) 'ou_Command.Execute |
| exécute une requête, un instructions SQL ou une procédure stockée spécifiée dans la propriété CommandText |
<html>
<head>
<title>Démonstration de Command</title>
<script language="VBScript">
Sub Soumission_OnClick()
If Len(formulaire.Nom.value) = 0 Then
Alert "Veuillez entrer votre nom de famille !"
formulaire.Nom.focus
Exit Sub
ElseIf Len(formulaire.Prenom.value) = 0 Then
Alert "Veuillez entrer votre prénom !"
formulaire.Prenom.focus
Exit Sub
ElseIf Len(formulaire.Age.value) = 0 Then
Alert "Veuillez entrer votre âge !"
formulaire.Age.focus
Exit Sub
ElseIf Len(formulaire.Qualite.value) = 0 Then
Alert "Veuillez entrer votre qualité !"
formulaire.Qualite.focus
Exit Sub
ElseIf Len(formulaire.eMail.value) = 0 Then
Alert "Veuillez entrer votre adresse email !"
formulaire.eMail.focus
Exit Sub
ElseIf Len(formulaire.Adresse.value) = 0 Then
Alert "Veuillez entrer votre adresse complète !"
formulaire.Adresse.focus
Exit Sub
End If
Call formulaire.submit()
End Sub
</script>
</head>
<body>
<%
If Len(Request.Form("Etape")) = 0 Then
%>
<form action="command.asp" method="post" name="formulaire">
<input type="hidden" name="Etape" value="Ajout">
<table>
<tr>
<td>Nom</td>
<td>
<input type="text" name="Nom" size="20" value="ANNAIS">
</td>
</tr>
<tr>
<td>Prénom</td>
<td>
<input type="text" name="Prenom" size="20" value="Angélique">
</td>
</tr>
<tr>
<td>Age</td>
<td>
<input type="text" name="Age" size="3" value="23">
</td>
</tr>
<tr>
<td>Qualité</td>
<td>
<input type="text" name="Qualite" size="20" value="Rédacteur">
</td>
</tr>
<tr>
<td>eMail</td>
<td>
<input type="text" name="eMail" size="20"
value="angelique.annais@inc.com">
</td>
</tr>
<tr>
<td>Adresse</td>
<td>
<input type="text" name="Adresse" size="20"
value="155 Avenue Lingenfield 75000 PARIS">
</td>
</tr>
<tr>
<td>
<input type="button" name="Soumission" value="Soumettre">
</td>
</tr>
</table>
</form>
<%
ElseIf Request.Form("Etape") = "Ajout" Then
Dim Commande_SQL
Commande_SQL = "Insert into Fiche (Nom, Prenom, Age, " & _
"Qualite, eMail, Adresse) Values('" & _
CStr(Request.Form("Nom")) & "','" & _
CStr(Request.Form("Prenom")) & "'," & _
CLng(Request.Form("Age")) & ",'" & _
CStr(Request.Form("Qualite")) & "','" & _
CStr(Request.Form("eMail")) & "','" & _
CStr(Request.Form("Adresse")) & "')"
Set obj_Connection = Server.CreateObject("ADODB.Connection")
obj_Connection.Open "DSN=personnel"
Set obj_Command = Server.CreateObject("ADODB.Command")
Set obj_Command.ActiveConnection = obj_Connection
obj_Command.CommandText = Commande_SQL
obj_Command.CommandType = 1
obj_Command.Execute
Response.Write "<p>Les éléments suivants ont été ajoutés à la " & _
"table de données <i>Personnel</i> :</p>" & _
"<b>" & Commande_SQL & "</b>"
Set obj_Command = Nothing
obj_Connection.Close
Set obj_Connection = Nothing
End If
%>
</body>
</html> |