Announcement

Collapse
No announcement yet.

Nachträgliches Verändern des Datentypen

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

  • Nachträgliches Verändern des Datentypen

    Hallo Forum,

    ich habe eine MS SQL SRV 2008 EXPRESS Datenbank entwickelt. In einer Tabelle habe ich ein Feld mit dem Datentyp varchar(100) belegt.

    Nun möchte ich diese Definition nachträglich aber in varchar(255) ändern. Leider bekomme ich in dem Entwurfsmodus hier eine Fehlermeldung.

    Wer kann mir einen Tipp geben???

  • #2
    OK, mit dem Alter Table Befehl klappts, in der grafischen Oberfläche nicht???

    However, it works.

    Comment


    • #3
      So sollte das gehen

      [highlight=sql]
      ALTER TABLE tbl
      ALTER COLUMN col varchar(255)
      [/highlight]

      Edit: Oh da war ich zu langsam

      Comment


      • #4
        Wenn man jetzt noch die Fehlermeldung wüsste ...

        In SSMS 2008 gibt es eine Option, die Tabellenänderungen verhindert, wenn die Tabelle dadurch neu erstellt werden muss.
        Menü "Extras" => "Optionen", dort "Designer" => "Tabellen- und Datenbankdesigner"

        [highlight=SQL]
        CREATE TABLE #tmp (Feld1 varchar(100))
        INSERT INTO #tmp VALUES (REPLICATE('X', 100));

        SELECT LEN(Feld1) FROM #tmp;
        GO
        ALTER TABLE #tmp
        ALTER COLUMN Feld1 varchar(255);
        GO
        UPDATE #tmp
        SET Feld1 = Feld1 + REPLICATE('X', 155);
        SELECT LEN(Feld1) FROM #tmp;

        GO
        DROP TABLE #tmp
        [/highlight]
        Olaf Helper

        <Blog> <Xing>
        * cogito ergo sum * errare humanum est * quote erat demonstrandum *
        Wenn ich denke, ist das ein Fehler und das beweise ich täglich

        Comment


        • #5
          Originally posted by joghurtjens View Post
          OK, mit dem Alter Table Befehl klappts, in der grafischen Oberfläche nicht???

          However, it works.
          Das Phänomen hatte ich auch schon mal. In der grafischen Oberfläche meldet er bei großen Datenbeständen eine Zeitüberschreitung, mit Alter Table im Query Designer dauert es dann zwar auch ein bißchen, aber es funktioniert.

          Comment

          Working...
          X