[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jun 2001
    Beiträge
    119

    Thumbs up SQL: drop table mit Abfrage auf Existenz?

    Hallo!

    Ich möchte in einer Stored Procedure ein drop table ausführen. Wenn die Datei nicht existiert, bricht die Stored Procedure ab. Kann ich den Fehler irgendwie abfangen oder vor drop table auf die Existenz der Datei prüfen?

    In MySQL gibt es sowas: drop table if exists meinetab
    Funktioniert auf der iSeries nicht.

    Vielen Dank für Hinweise.

    Gruß
    Reiner

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.300
    Normalerweise gibts keinen Abbruch sondern nur einen entsprechenden SQLCOD.
    Schau mal im Joblog nach der Ursache des Abbruches.

    Ansonsten kann man per

    "SELECT NAME, DBNAME from SYSTABLES where NAME=: MYNAME and DBNAME = : MYLIB"

    abfragen.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  3. #3
    Registriert seit
    Jun 2001
    Beiträge
    119
    Danke für die Antwort.
    Wenn die Datei beim Drop nicht da ist, bekomme ich einen Abbruch mit SQL0204. Select über die Systables geht auch nicht, da die Datei in der QTEMP erstellt wird. Dass wird ja dann nicht mit protokolliert.

    Reiner

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.300
    Dann versuch doch einfach:

    select count(*) into : MyCount from qtemp/mytable
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  5. #5
    Registriert seit
    Jun 2001
    Beiträge
    119
    Das geht ja auch nicht so einfach. Wenn die Datei nicht da ist, bricht der Select mit einer Fehlermeldung ab. Ich habe eine Stored Procedure und kein embedded SQL. Aber irgendwas muss es da doch auch geben wegen Fehler abfangen.

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.300
    Wie gesagt, normalerweise gibt es keine Abbrüche bei SQL sondern nur SQLCOD und SQLSTATE.

    Wenn ich einen entsprechenden SQL-Befehl für DROP TABLE verwende, gibts zwar im Joblog einen Fehler, aber keinen Programmabsturz.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  7. #7
    Registriert seit
    Mar 2002
    Beiträge
    5.294
    wenn es sich um eine SQL Procedure handelt, dann brauchst du da einen CONTINUE HANDLER FOR SQL EXCEPTIONS -> siehe SQL Reference
    wenn es sich um ein abbrechendes SQL Script handelt, dann kann man den errorlevel erhöhen

    mfg

    Dieter Bender

    Zitat Zitat von rebe Beitrag anzeigen
    Hallo!

    Ich möchte in einer Stored Procedure ein drop table ausführen. Wenn die Datei nicht existiert, bricht die Stored Procedure ab. Kann ich den Fehler irgendwie abfangen oder vor drop table auf die Existenz der Datei prüfen?

    In MySQL gibt es sowas: drop table if exists meinetab
    Funktioniert auf der iSeries nicht.

    Vielen Dank für Hinweise.

    Gruß
    Reiner
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  8. #8
    Registriert seit
    Jun 2001
    Beiträge
    119
    Danke Dieter, das habe ich gesucht.

    Habe mir gestern nachmittag schon ein Buch über Stored Procedures rausgesucht und mir das Kapital Error Handling angesehen. Da ist das mit dem Continue Handler beschrieben.

    Gruß
    Reiner

Similar Threads

  1. Antworten: 11
    Letzter Beitrag: 18-07-16, 09:49
  2. AS400 auf SQL Server
    By DEVJO in forum IBM i Hauptforum
    Antworten: 7
    Letzter Beitrag: 12-10-06, 18:28
  3. Drop Down Liste auf Feldebene
    By codierknecht in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 23-08-06, 11:30
  4. Einfache Abfrage in COBOL/400 mit EXEC SQL
    By AS400-Anfänger in forum NEWSboard Programmierung
    Antworten: 6
    Letzter Beitrag: 27-06-06, 13:18
  5. Neue Möglichkeiten mit SQL auf i5 / iSeries / AS400
    By Fondue in forum NEWSboard Server Software
    Antworten: 0
    Letzter Beitrag: 28-04-06, 19:40

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •