SDO_DAS_Relational::executeQuery --
Exécute une requête SQL donnée à une base de données relationnelle et
retourne les résultats comme graphique de données normalisé.
Cette fonction est
EXPERIMENTALE. Cela signifie que le comportement de
cette fonction, son nom et concrètement, TOUT ce qui est documenté ici peut
changer dans un futur proche, SANS PREAVIS! Soyez-en conscient, et utilisez
cette fonction à vos risques et périls.
Exécute une requête donnée à la base de données relationnelle en utilisant
le descripteur de base de données PDO fourni. Utilise le modèle qui est
bâti des méta-données pour interpréter le jeu de résultats.
Retourne un graphique de données.
Liste de paramètres
PDO_database_handle
Construit en utilisant l'extension PDO.
Une ligne typique pour construire un descripteur de base de données PDO
devrait ressembler à ceci :
$dbh = new PDO("mysql:dbname=COMPAGNIEDB;host=localhost",DATABASE_USER,DATABASE_PASSWORD);
SQL_statement
La requête SQL Ã être exécutée sur la base de données.
column_specifier
Le DAS Relationnel doit examiner le jeu de résultats et pour chaque
colonne, provenant de quelle table et quelle colonne de la table il
vient.
Dans certaines circonstances, il peut trouver les informations pour
lui-même, mais la plupart du temps il ne le peut pas.
Dans ces cas, une colonne spécifique est requise, qui est un tableau
qui identifie les colonnes. Chaque entrée dans le tableau est simplement
une chaîne de caractères dans la forme
table-name.column_name.
Le spécificateur de colonne est requis lorsqu'il y a des noms de
colonnes similaires dans les méta-données de base de données.
Par exemple, dans une base de données utilisée dans ces exemples,
toutes les tables ont une colonne
id
et une colonne
nom.
Lorsque DAS Relationnel récupère le jeu de résultats à partir de PDO,
il peut le faire avec l'attribut PDO_FETCH_ASSOC, ce qui permettra aux
colonnes dans les jeux de résultats d'être marquées avec un nom de
colonne, mais on ne pourra pas distinguer les entrées similaires.
Alors cela fonctionnera seulement lorsqu'il y aura aucune entrée
similaire possible dans les jeux de résultats.
Pour résumer, spécifier un tableau de spécificateurs de colonne
lorsqu'il y a une incertitude à propos des colonnes qui pourraient
venir de quelle table. Il faut l'omettre seulement lorsque chaque nom
des colonnes dans les méta-données de base de données est unique.
Tous les exemples dans la section d'Exemples utilisent un
spécificateur de colonne. Il y a un exemple dans le dossier
Scenarios de l'installation qui ne fait pas :
il ne fonctionne seulement avec la table employe et parce que il
travaille seulement avec une seule table, il ne peut y avoir des noms de
colonnes similaires.
Valeurs de retour
Retourne un graphique de données.
Spécifiqueent, elle retourne un objet racine d'un type spécial. Sous cet
objet de racine se trouvera les données du jeu de résultat. L'objet de
racine aura une propriété de valeurs multiples contenue avec le même nom
que le type racine d'application spécifié dans le constructur, et la
propriété continera un ou plusieurs objets de donnés du type de racine de
l'application.
Dans le cas que la requête aucune données, l'objet spécial de racine pour
le type de racine de l'application sera vide.
Erreurs / Exceptions
SDO_DAS_Relational::executeQuery() peut jeter une
exception SDO_DAS_Relational_Exception si elle n'est pas capable de
construire le graphique de données correctement.
Cela peut arriver pour un certains nombres de raisons :
par exemple, si elle trouve qu'elle n'a pas de clés primaire dans le jeu de
résultats pour tous les objets.
Le DAS Relationnel attrape toutes les exceptions de PDO et obtient des
informations de diagnostique de PDO qui inclut un
SDO_DAS_Relationnal_Exception qui sera alors jeté.
Exemples
Veuillez visitez la section
exemples
dans la section information générale à propos des DAS Relationnel pour
beaucoup d'exemples en appelant cette méthode.