Announcement

Collapse
No announcement yet.

Einzelne Felder Variable setzen

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

  • Einzelne Felder Variable setzen

    Hi Leute,

    ich hab folgende Aufgabe bzw ich soll rausfinden ob es die Möglichkeit gibt einzelne Felder Variabel zu setzen, d.h. man kann ja Feldern einen Wert zu weisen wie groß sie Max sein dürfen z.b. 40 Zeichen. Gibt es die Möglichkeit diese Variabel zu setzen?, also soviel ich brauch, soviel sollen zu Verfügung stehen, in dem einzelnen Feld.

    Gruß Circel

  • #2
    Ja, in dem du den Typ BLOB verwendest

    Comment


    • #3
      Hi Markus,

      ja das weiss ich. Gibt es den auch die Möglichkeit bei einem normalen Feld diese Variabel zu setzen?

      Gruß Circel

      Comment


      • #4
        Nein, Nur der Typ Blob hat eine variable Länge

        Comment


        • #5
          Ok danke dir.

          Noch was anderes. Kennst du eventuell ein Programm mit dem man in Blobs suchen kann, eventuell alle sortieren lassen kann?

          Gruß Circel

          Comment


          • #6
            Da FB (noch) keine Volltextindizierung von Blobs beherrscht, musst du diese wohl selber nachrüsten.

            Comment


            • #7
              Hi Markus,

              immoment arbeite ich mich in FB ein. Könntest du mir eventuell einen Ansatz geben, wo ich dies nachrüsten müsste? Heisst das ich müsste mit den src dateien arbeiten?

              Gruß Circel

              Comment


              • #8
                wie lang soll es denn maximal sein? varchar geht bis ca 32000 hat aber diverse andere nachteile.

                Holger
                www.firebird-conference.com

                Comment


                • #9
                  Hi Klemmo,

                  du könntest ein Feld variable setzen?
                  Oder Blobs automatisch sortieren lassen?
                  Oder zu welchem Thema hattest du jetzt geschrieben?

                  Gruß Circel

                  Comment


                  • #10
                    Hallo,

                    Holger hat gemeint, dass Du einen VARCHAR bis zu einer Länge von 32765 anlegen kannst. Diese Länge ist allerdings fix, heißt aber nicht, dass intern immer so viel abgespeichert wird, wenn du z.B. nur ein paar Zeichen in so einem Feld ablegst.

                    Die maximale Indexlänge wurde in Firebird 2 auf (PageSize / 4) - 4 erhöht, d.h. man kann auch längere VARCHARs indizieren, aber nicht der Länge 32765. Hier hilft vielleicht ein Expression Index, der mit SUBSTRING nur einen Teil indiziert. BLOBs kann man nicht sortieren. Eine Diskussion BLOBs vs. VARCHAR findest Du hier (vielleicht nicht mehr ganz aktuell): http://www.volny.cz/iprenosil/interb...ib_strings.htm

                    Für Firebird gibt es auch ein paar Fremdprodukte, die dir eine indizierte Volltextsuche ermöglichen. Einfach mal googlen.

                    @Holger: Hast Du meine Email/Anfrage bzgl. Hotel/Zimmer für die Konferenz bekommen?

                    Thomas
                    Thomas Steinmaurer

                    Firebird Foundation Committee Member
                    Upscene Productions - Database Tools for Developers
                    Mein Blog

                    Comment


                    • #11
                      Hi Thomas,

                      kannst du mir auch sagen wie ich die Länge setzen kann? Im Programmcode oder wenn ich ein neues Feld erstelle, dazu noch die größe reinschreiben?
                      Wie gesagt, ich bin grad frisch an FB dran.
                      Und zur Volltextsuche bzw. sortieren der Blobs hab ich nichts passendes gefunden. Hast du eventuell was? Kann auch Kosten, das sollte nicht das Problem sein.

                      Gruß Circel

                      Comment


                      • #12
                        Beim Erstellen der Tabelle, gibst du die maximal Größe des Feldes an.

                        Comment


                        • #13
                          Hi Markus,

                          könntest du mir ein Beispiel zeigen?

                          Eines Feld wird ja so erstellt:

                          ALTER TABLE "NEUE TABELLE"
                          ADD SCHNICKSCHNACK VARCHAR(1)

                          Bei VARCHAR muss ich jetzt was einstellen?

                          Gruß Circel

                          Comment


                          • #14
                            Die maximale Größe, die das Feld annehmen können soll:
                            Code:
                             ALTER TABLE "NEUE TABELLE"
                            ADD SCHNICKSCHNACK VARCHAR(32767);

                            Comment


                            • #15
                              ok danke dir, ich werde es mal testen.

                              Und kennt ihr eventuell ein Programm mit dennen man Blobs sortieren und in ihnen Dinge suchen kann?
                              Gruß Circel

                              Comment

                              Working...
                              X