+ Antworten
Ergebnis 1 bis 5 von 5

Thema: Wie werden SQL-Befehle aus einer Textdatei geladen?

  1. #1
    douchebag
    Gast Avatar von douchebag

    Wie werden SQL-Befehle aus einer Textdatei geladen?

    Ich wollte ein paar mysql befehler aus einer externen datei laden... ich habe in der mysql-doky folgenden eintrag gefunden:
    MySQL AB :: MySQL 5.1 Referenzhandbuch :: 8.5.3 Wie SQL-Befehle aus einer Textdatei geladen werden
    jetzt stehe ich nur vor dem problem, dass ich nicht weiss wie ich den shell> mysql < text_file befehl ausführen soll(ich hoffe, ich habs richtig verstanden)... mit mysql_query("shell> mysql < datei.sql"); gehts schonmal nicht -.-

    vll. kann mir ja jemand helfen

  2. #2
    Ich spreche nur englisch! Avatar von Boardy

    Registriert seit
    14.9.06 - 20:09
    Beiträge
    1.548
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Wie werden SQL-Befehle aus einer Textdatei geladen?

    Interessantes Geruecht.Das ist schoen.
    Ich habe einen sehr netten ProgrammiererOne what?FiveJust three?Mit ?Do you prefer books or TV? I like the way you talk.

  3. #3
    Aufsteiger/in Avatar von terra-power

    Registriert seit
    14.4.04 - 15:44
    Beiträge
    435
    Thanks
    0
    Thanked 6 Times in 6 Posts

    AW: Wie werden SQL-Befehle aus einer Textdatei geladen?

    Das geht nur, wenn du das mysql kommandozeilenprogramm aufrufst. Du übergibst quasi diesem Programm eine Textdatei wo zeile für zeile die befehle übergeben werden.

    So wie es mir scheint, benutzt du ja die (niedere) Programmiersprache PHP. Dort hast du natürlich nicht die möglichkeiten, eine Datei zu übergeben. Du müsstest schonmal in die PHP doku schaun, was dem mysql_query() übergeben wird. Aus alten erfahrungen ist das ein string, der direkt eine sql query ist.

    Wenn du also eine textdatei abarbeiten willst, musst du das folgendermaßen tun:

    1.) die textdatei einlesen per php und die eingelesene datei in einen string speichern und somit den dateiinhalt dem mysql_query() übergeben

    ODER

    2.) per php mit "exec" oder wie der befehl hieß, auf systemebene den mysql client ausführen und das oben geannte kommando: mysql < text.file übergeben.

    ODER

    3.) einen persistenzmenager benutzen, der erledigt die ausführung meist von alleine.


    Zu den möglichkeiten:

    1. ist relativ unprofessionell
    2. geht nicht überall (wegen safe_mode) außerdem zu systemriskant
    3. wird es nicht für php geben, jedoch für java und .NET (Hibernate)

    Beste grüße aus dem urlaub :-)
    stop:

    NOP
    JMP stop

  4. #4
    Aufsteiger/in Avatar von terra-power

    Registriert seit
    14.4.04 - 15:44
    Beiträge
    435
    Thanks
    0
    Thanked 6 Times in 6 Posts

    AW: Wie werden SQL-Befehle aus einer Textdatei geladen?

    Ach ja und zu boardy nochmal. ist kein gerücht. ist so. man muss halt nur die kommandozeilen tools kennen. Jedoch seit phpmyadmin brauch es der amateur und semiprofessionelle bereich nicht mehr ... schade eigentlich :-(
    stop:

    NOP
    JMP stop

  5. #5
    douchebag
    Gast Avatar von douchebag

    AW: Wie werden SQL-Befehle aus einer Textdatei geladen?

    naja... ich habs mitlerweile so gemacht, dass die inserts, die ich eigentlich einlesen wollte, in einer separaten, includeten .php-datei mit mysql_query verarbeite... ich wollte halt den code nur übersichtlicher machen, weill ich über 100 inserts auf einmal machen muss und sonst wäre der code vieeel zu lang ^^

    aber trozdem danke für die hinweise... ich werd mir mal exec() zu gemüte führen... wie du richtig erwähnt hast sind kommandobefehler dank phpmyadmin für normalos nutzlos geworden... aber schaden kann sowas ja nie ^^

+ Antworten

Berechtigungen

  • Neue Themen erstellen: Ja
  • Themen beantworten: Ja
  • Anhänge hochladen: Ja
  • Beiträge bearbeiten: Ja
  •