AdoQueryConnection.Command - Propriété
Obtient ou définit le texte de la chaîne de commande SQL pour un objet AdoQueryConnection.
Espace de noms : Microsoft.Office.InfoPath
Assembly : Microsoft.Office.InfoPath (dans Microsoft.Office.InfoPath.dll)
Syntaxe
'Déclaration
Public MustOverride Property Command As String
Get
Set
'Utilisation
Dim instance As AdoQueryConnection
Dim value As String
value = instance.Command
instance.Command = value
public abstract string Command { get; set; }
Valeur de propriété
Type : System.String
Texte de commande SQL de la connexion de données.
Remarques
La propriété Command de l'objet ADOQueryConnection contient le texte de commande SQL, utilisé par la connexion de données ADO pour extraire des données d'une source de données externe ADO/OLEDB.
Notes
L'utilisation de l'objet ADOQueryConnection est limitée aux bases de données Microsoft SQL Server et Microsoft Access.
Seuls les formulaires qui s’exécutent dans le même domaine que le formulaire actuellement ouvert ou les formulaires disposant d’autorisations inter-domaines peuvent accéder à ce membre.
Vous pouvez accéder à ce type ou à ce membre à partir du code exécuté dans les formulaires ouverts dans Microsoft InfoPath Filler ou dans un navigateur web.
Exemples
Dans l'exemple suivant, la propriété Command de la classe ADOQueryConnection et la méthode Execute de la classe DataConnection sont utilisées pour interroger une table d'une source de données secondaire nommée Employee. La requête est exécutée sur la connexion de données créée en mode Création dans InfoPath à la base de données qui contient la table Employee, également appelée « Employees ».
Dans un premier temps, la valeur entrée par l'utilisateur dans le champ my:EmpID est utilisée pour mettre à jour le texte de commande SQL à l'aide de la propriété Command. Ensuite, la méthode Execute est appelée pour actualiser les données extraites par la connexion de données. Elle met à jour l'enregistrement affiché dans un contrôle Tableau extensible lié à la table Employees du formulaire. Cet exemple exige que le champ my:EmpID dans la source de données principale soit lié à un contrôle Zone de texte dans une vue qui contient un contrôle Button pour appeler le code suivant.
public void RefreshData_Clicked(object sender, ClickedEventArgs e)
{
// Get the Employees connection from the
// DataConnections collection.
AdoQueryConnection myAdoQueryConnection =
(AdoQueryConnection)(this.DataConnections["Employees"]);
// Get the employee's ID from the EmpID field in
// the main data source.
XPathNavigator myNav =
CreateNavigator().SelectSingleNode("/my:myFields/my:EmpID",
NamespaceManager);
// Assign the value from the field to a variable.
string employeeID = myNav.InnerXml;
// Change the SQL command for Employees connection to retrieve
// the record of the Employee's ID entered by the user.
myAdoQueryConnection.Command =
"select * from [Employees] where [EmployeeID] = " + employeeID;
// Execute the updated command against the data connection to
// refresh the data.
myAdoQueryConnection.Execute();
}
Public Sub RefreshData_Clicked(ByVal sender As Object, ByVal e As ClickedEventArgs)
' Get the Employees connection from the
' DataConnections collection.
Dim myAdoQueryConnection As AdoQueryConnection = _
DirectCast(Me.DataConnections("Employees"), AdoQueryConnection)
' Get the employee's ID from the EmpID field in
' the main data source.
Dim myNav As XPathNavigator = _
CreateNavigator().SelectSingleNode("/my:myFields/my:EmpID", _
NamespaceManager)
Dim employeeID As String = myNav.InnerXml
' Change the SQL command for Employees connection to retrieve
' the record of the Employee's ID entered by the user.
myAdoQueryConnection.Command = _
"select * from [Employees] where [EmployeeID] = " + employeeID
' Execute the updated command against the data connection to
' refresh the data.
myAdoQueryConnection.Execute()
End Sub