Skript automatisieren

Fragen und Probleme zu PL/pgSQL.

Skript automatisieren

Beitragvon KMP » Do 10. Mai 2012, 08:28

Hallo,

ich habe eine relativ komplexes Skript, welches mittels temporärer Tabellen Daten zwischen verschiedenen Tabellen kopiert.
Wie kann ich das ganze automatisieren?
Im Moment starte ich das ganze immer nach Aufforderung meiner Nutzer.

mfg KMP
KMP
Neuer Benutzer
 
Beiträge: 2
Registriert: Do 10. Mai 2012, 08:26

Beitragvon Gisman » Do 10. Mai 2012, 08:50

Unter Linux per cron. Unter Windows gibt sicher ein äquvalentes Tool.

Gruß Uwe
Have a lot of fun!
Gisman
Erfahrener Benutzer
 
Beiträge: 863
Registriert: Fr 20. Jan 2006, 16:30
Wohnort: Pfalz

Beitragvon KMP » Do 10. Mai 2012, 08:59

Hallo,
unter Windows würde mich das interessieren.
Meine Idee war psql aufzurufen nur wie würde ich das Skript dann reinbekommen?
KMP
Neuer Benutzer
 
Beiträge: 2
Registriert: Do 10. Mai 2012, 08:26

Beitragvon castorp » Do 10. Mai 2012, 09:14

KMP hat geschrieben:Hallo,
unter Windows würde mich das interessieren.
Meine Idee war psql aufzurufen nur wie würde ich das Skript dann reinbekommen?

Leg eine Batchdatei an, die das alles erledigt.
Der User mit dem Du psql aufrufst sollte entweder eine pgpass.conf haben, oder Du setzt in der Batchdatei via set PGPASS=mypassword eines, z.B.

Code: Alles auswählen
set pgpass=verysecretpassword
psql -f %~dp0worker.sql dbname pgsusername


Das SQL Script worker.sql muss dann im gleichen Verzeichnis liegen wie die Batchdatei. Wenn das nicht gewünscht ist, dann musst Du den absoluten Pfad zu der SQL Datei in der Batchdatei angeben! Du solltest Dich nicht darauf verlassen, dass ein bestimmtes Verzeichnis als "aktuelles Verzeichnis" eingestellt ist.

Zum Anlegen des Jobs gibt es drei Möglichkeiten

  • at
  • schtasks
  • Control Panel GUI


"at" ist soweit ich das verstanden habe veraltet. schtasks ist das neue Kommandozeilen Interface für die GUI aus dem Control panel

Details dazu hier:

Taskplaner (Übersicht)
Verwalten des Taskplaners mithilfe der Computerverwaltung
Schtasks
At

Nicht vergessen, den richtigen User beim Anlegen des Tasks zu verwenden.
A SQL query walks into a bar and sees two tables. He walks up to them and says 'Can I join you?'
castorp
Erfahrener Benutzer
 
Beiträge: 673
Registriert: Sa 27. Jun 2009, 22:24


Zurück zu PL/pgSQL

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste

cron