Announcement

Collapse
No announcement yet.

Existens von Dateien prüfen, nur mit SQL

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Existens von Dateien prüfen, nur mit SQL

    Hallo zusammen.
    Ich möchte gerne überprüfen, ob bestimmte Dateien vorhanden sind.
    Dazu steht mir jedoch nur SQL zur verfügung.

    Also das ganze sollte so aussehen.

    create variable i,a integer;
    create variable pth longchar
    i = 0;
    a = select max(indexID) from dbcreat.image;
    for i <= a
    pth = select filepath from dbcreat.image where image = i;
    Hier nun prüfen, ob unter dem Pfad von pth datei vorhanden is, if vorhanden = "pth vorhanden" else = "pth fehlt" output to ergebnis.txt append ;
    i = i +1;
    Next

    Hat jemand eine Idee?
    Danke für die Hilfe, bei goolge und hier habe ich nichts gefunden...

  • #2
    Um welches DBMS handelt es sich?
    Sind es lokal auf dem DB-Server vorhandene Dateien?

    Comment


    • #3
      DBMS ist Sybase Central.
      SQL Anywhere.
      Zugriff mit interactive SQL.

      Die Dateien sind auf dem Server, ISQL läuft auch darauf.

      Mit z.b. PHP ist das kein problem, aber das steht mit auf den Rechnern nicht zur verfügung, nur SQL...

      Danke für die Hilfe.

      Comment


      • #4
        Originally posted by teefit View Post
        ...Ich möchte gerne überprüfen, ob bestimmte Dateien vorhanden sind.
        Dazu steht mir jedoch nur SQL zur verfügung.
        SQL ist eine Strukturierte Datenabfragesprache und bietet keine Möglichkeiten und Funktionen zur Arbeit mit dem Dateisystem.

        Gruß Falk
        Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

        Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

        Comment


        • #5
          Genau das hatte ich befürchtet.

          Also seht ihr keine chance?

          Danke und Gruß, teefit

          Comment


          • #6
            Originally posted by teefit View Post
            ...Also seht ihr keine chance?
            Wenn dein DBMS nicht irgendwelche integrierten Funktionen zur Arbeit mit dem Dateisystem zur Verfügung stellt - Ja! Mit reinem SQL geht es defintiv nicht.

            Gruß Falk
            Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

            Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

            Comment


            • #7
              Hallo,
              Originally posted by teefit View Post
              Also seht ihr keine chance?
              vielleicht mit einem Programm, welches Remotezugriff auf den Rechner ermöglicht, wie z.B. Putty. Damit könnte man dann auf das Dateisystem des Zielrechners zugreifen.
              MfG
              Cheat-Sheets for Developers / Programming Quotes

              Comment


              • #8
                o.k., danke.

                da es auf einem windoof system läuft, hätte ich noch dos zur verfügung.
                das ginge auch, aber hier gibte es folgendes problem:

                die zu prüfenden Dateien liegen im mehreren Unterordnern mehrerer Unterordner eines Hauptordners. Ich müsste NUR die Dateien mit Pfadangaben untereinander haben.
                Also dir /s > ergebnis.txt funktioniert nicht, da ich da auch alle verzeichnisse aufgeliste bekomme, und keine einzeilige Pfadangabe.
                Da die Dateien keine Endung haben, funktioniert dies auch nicht mit *.xxx
                Wie kriege ich also alle vorhandnen Datein untereinander gelistet im format
                E:\Hauptornder\OrdnerA\Ordner1\Datei1
                E:\Hauptornder\OrdnerA\Ordner1\Datei2
                E:\Hauptornder\OrdnerA\Ordner2\Datei1
                .
                .
                .
                E:\Hauptornder\Ordner_n\Ordner_n\Datei_n


                In welchm Forum kann ich diese Anfrage posten?

                Nochmals vielen Dank!!

                Comment


                • #9
                  @Markus Lahr

                  Die Dateien liegen auf dem Rechner, nicht remote.
                  ich kann nur keine anderen programme installieren...

                  Comment


                  • #10
                    Hallo, ich glaube ich habs, wenn iht mir helft ;o)

                    Also ich möchte nun eine Batch datei erstellen lassen, wie kann ich pro Ergebniszeile einen Befehl ausfüren?

                    Select filepath from dbcreat.image

                    gibt mir a alle zeilen aus, nun möchte ich pro zeile folgendes machen, wenn i und a eine variable longchar ist:

                    Code:
                    i = zeile aus ergebnis select filepath from dbcreat.image;
                    a = "if not exist " & i & " echo " & i & " nicht vorhanden >> C:\Ergebnis.txt";
                    
                    output to C:\CheckImages.bat append
                    format ascii

                    müsste das in eine Schleife?
                    Es soll also pro zeile aus dem select eine Zeile in die .bat geschrieben werden..

                    Thx

                    Comment


                    • #11
                      Hallo, könnte es so gehen?

                      create variable cde, pth longchar
                      open dbcreat.image
                      loop
                      fetch next filpath into pth;
                      cde = "if not exist " & pth & " echo " & pth & " nicht vorhanden >> C:\ergebnis.txt";
                      output to C:\checkfile.bat append
                      format ascii;
                      end loop


                      lg, teefit

                      Comment

                      Working...
                      X