Suchen / SearchNavigation |
Benutzung der PostgreSQL Zugriffsbibliothek28 Okt 2011 - 14:48 Eine Übersicht, die reichen sollte, wenn Sie die Grundideen gelesen haben. Laden der BibliothekLaden der Bibliothek ist konstanter Code in Ihren AppleScripts: property app_support : (path to application support) as text property lib_path : app_support & "js_aux_scripts:pgsql_objects_pdo_devel.scptd" set lib to load script file lib_path Dies legt die Bibliothek in der Variable »lib« ab. Erzeugen eines Datenbank-KonnektorsDie Bibliothek hat einen Handler names »new_link«. Er wird mit vier Argumenten aufgerufen: new_link(url_des_datenbank_servers, logon_name, logon_kennwort, name_der_datenbank) Beispiel:
set dbh to new_link("localhost", "postgres", "SeCrEt", "planets_sample") of lib
Einen Konnektor anlegen verbindet nicht mit der Datenbank. Dies geschieht erst, wenn das Script benutzt wird. do_select: Eine SELECT-Anweisung ausführenDas Konnektor-Script hat den Handler »do_select«. Er dient für alle SQL-Anweisungen, die eine Ergebnismenge liefern. Er nimmt zwei Argumente:
Beispiel:
Dies liefert einen AppleScript-Record wie:
Das heißt: 6 Spalten (oder Felder), 2 Zeilen (oder Datensätze), kein Fehler, und in »table» eine Liste von Listen mit den gelieferten Datensätzen. do_query: Ein UPDATE ausführenDer Handler »do_query« sendet eine Anweisung an den Server, erwartet aber keine Ergebnismenge als Antwort. Beispiel:
Dies ist ein Update jedes Records, der das Suchkriterium erfüllt. Das Ergebnis ist ein Record wie:
set_sequence: Eine Insert-ID bekommenOft braucht man die Insert-ID nach einem INSERT. Postgres verlangt dafür den Namen des Objekts, das das sequentielle Zählen erledigt. Beispiel:
Der von do_query gelieferte Record sieht etwa so aus:
Benutzen Sie Ihr Datenbank-Administrationswerkzeug, den Namen zu finden. Voreingestellt benutzt PostgreSQL: Tabellenname-Spaltenname_seq. Wird die Sequenz nicht mehr gebraucht, es sollen aber weitere SQL-Anweisungen ausgeführt werden, sollte sie zu leer zurückgesetzt werden:
Properties / Eigenschaften
Ist dies false (Voreinstellung), führt ein Fehler bei der SQL-Anweisung nicht zu einem AppleScript-Fehler. Statt dessen erscheint er im Ergebnis-Record. Ist die Property wahr, erfolgt in solchen Fällen ein AppleScript-Fehler.
Die Version der Bibliothek, falls im Code gebraucht. Für eine Version 1.2 sind die Werte 1 und 2. Alle Handler im Script »helper« sollten als privat betrachtet werden. Verlassen Sie sich nicht auf ihr Verhalten.
|
PostgreSQL-Zugriff mit AppleScript über PHP Data Objects |