[SQL allgemein] INSERT zu lang: Was machen?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [SQL allgemein] INSERT zu lang: Was machen?

    Hallo Ihrs!

    Ich habe ein Blob-Feld, in das ich per INSERT oder UPDATE-Anweisung eine Zeichenfolge speichern möchte, die ca. 90.000 Zeichen hat. Mein Interbase-Server läßt aber keine SQL-Anweisungen über 65.000 Zeichen zu. Was kann ich da machen?

    Als Lösung habe ich schon überlegt, den String in 65.000-Zeichen-Teile zu zerschneiden und dann irgendwie sowas zu basteln
    UPDATE ... MEINFELD = MEINFELD+'xyz...' (wenn das mit Interbase überhaut geht....)
    aber gibt es da nicht eine bessere Methode?



  • #2
    hmm,

    darf ich fragen, was einen string 90.000 zeichen groß werden läßt? kannst du die informationen nicht aufteilen?
    Die Zeit hat ihre Kinder längst gefressen

    Kommentar


    • #3
      Vielleicht mit einem Algorythmus komprimieren und beim Auslesen dekomprimieren ?
      Yeah !

      Kommentar


      • #4
        [SQL allgemein] Warum so viele Zeichen:

        Hab ein Script, welches per VB ein Wordfile in HTML umwandelt. Der Inhalt soll dann in ein Blob gespeichert werden. Nur Frag ich mich, was ein Blob mit einer Speichermöglichkeit über 65.000 Zeichen soll, wenn man keine INSERT und UPDATE mit über 65.000 Zeichen hinbekommt
        MENSCH!!! DAS KANN DOCH NICHT SEIN (BRÜLL!!!)

        Kommentar


        • #5
          wie wär's mit ner alternative:
          - schmeiß die blob-spalte raus
          - mach ne neue spalte namens dateiname
          - lade die datei hoch und speichere in dateiname den entsprechenden namen
          Ich denke, also bin ich. - Einige sind trotzdem...

          Kommentar


          • #6
            ansich auch eine gute Idee! Nur wie mache ich es dann mit der Volltextsuche? Zudem fände ich es so schön, alles in der Datenbank zu haben. Ich habe sogar 2/3 des PHP-Codes in der Datenbank (nur die Kern-Klassen hab ich als File).
            Der Schrott ist halt, dass eine Tabelle mit 4 mal 10 Feldern aus Word heraus einen HTML-Code von 90.000 Zeichen bringt (wenn ich es selber genauso mache, dann komme ich mit 2000 Zeichen hin). Kennt Ihr ein Script, was den MS-HTML-Code-Schrott sauber macht? Wenn ich selber anfange, dann brauche ich dafür Jahre. Und bei jeder neuen MS-Officeversion fängt der Horror von vorne an.

            Kommentar


            • #7
              Original geschrieben von 2malC
              Ich habe sogar 2/3 des PHP-Codes in der Datenbank
              ob das clever ist?

              es heisst datenbank, nicht phpbank, codebank oder gar s****bank.
              INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


              Kommentar


              • #8
                Original geschrieben von mrhappiness
                wie wär's mit ner alternative:
                - schmeiß die blob-spalte raus
                - mach ne neue spalte namens dateiname
                - lade die datei hoch und speichere in dateiname den entsprechenden namen
                Original geschrieben von 2malC
                ansich auch eine gute Idee! Nur wie mache ich es dann mit der Volltextsuche?
                - strip_tags()
                - html-entities umdrehen
                - uU addslashes()


                voila ... nur plain-text für die datenbank
                Kissolino.com

                Kommentar


                • #9
                  @Wurzel

                  jo, nur dann ist die gesamte Formatierung futsch ("Määä, es soll aber so aussehen, wie es in Word aussah!") Kann ich nicht, denn Kunde hat solche Anforderung (kopfschüttel, doch was macht man nicht für sein Geld...)

                  Kommentar


                  • #10
                    dann mach doch beides:
                    datei abspeichern auf der festplatte
                    in der tabelle speicherst du den dateinamen und den plain-text

                    oder du versuchst mal http://www.w3.org/People/Raggett/tidy/
                    Ich denke, also bin ich. - Einige sind trotzdem...

                    Kommentar


                    • #11
                      Original geschrieben von Abraxax
                      ob das clever ist?

                      es heisst datenbank, nicht phpbank, codebank oder gar s****bank.
                      Klar ist das nicht so fix. Doch es hat einfach sehr elegante Dinge: Hab eine autmatische Versionierung, Teamwork ist klasse, Programmversionen bekommen (zwangsweise) einen Status (z.B. "getestet", "abgenommen", usw...)...

                      Kommentar


                      • #12
                        Original geschrieben von mrhappiness
                        dann mach doch beides:
                        datei abspeichern auf der festplatte
                        in der tabelle speicherst du den dateinamen und den plain-text

                        oder du versuchst mal http://www.w3.org/People/Raggett/tidy/
                        DAS IST ES! ECHT, SO WERDE ICH ES MACHEN! Die Inhalte in der DB dienen dann nur noch zum Durchsuchen, dann kann ich auch noch Wörter wie "und", "oder", "eine", usw rausscheißen.

                        PS: Gibt es eine Liste, welche "Mini-Wörter" man rausschmeißen kann?

                        Kommentar


                        • #13
                          Original geschrieben von mrhappiness
                          dann mach doch beides:[/url]
                          so war das auch gemeint ... ... bissi mitdenken rentiert sich
                          Kissolino.com

                          Kommentar


                          • #14
                            soory, hast recht!

                            DENNOCH:
                            Wie fülle ich mit einem INSERT oder UPDATE zum Beispiel 1 Mio Zeichen in ein Blob?
                            Gibt es nicht sowas wie "Fülle diesen Sting (z.b. aus einer Datei) in das Feld"??

                            Kommentar

                            Lädt...
                            X