Announcement

Collapse
No announcement yet.

Größe des Datentyp´s einer Spalte ändern

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

  • Größe des Datentyp´s einer Spalte ändern

    Hallo.

    Ich würde gerne den Datentyp char(60) einer Spalte auf char(50) ändern. Die Spalte ist schon mit Werten befüllt und es würden auch einige dann abgeschnitten werden...Das ist aber egal und so gewollt.
    Meine Frage jetzt ..wie erreiche ich das??
    Ich habs schon mit ->rechte Maus auf Tabelle->Skritp für Tabelle als "Alter in" versucht..diese Option ist bei mir allerdings nicht verfügbar. Hat vllt. jemand eine Idee wie ich dies realisieren könnte?

  • #2
    Müsst beim MS SQL Sever laut Doku so gehen:

    Code:
    ALTER TABLE <MeineTabelle>
    ALTER COLUMN <MeineSpalte> 
    char(50);

    Comment


    • #3
      ja..so hab ich mir das ja auch gedacht..sieht bei mir dann so aus:

      ALTER TABLE [dbname].[name].[tabelle] ALTER COLUMN [name-spalte] char(55);

      geht aber leider nicht..kommt dann folgende Meldung:

      Meldung 8152, Ebene 16, Status 14, Zeile 1
      Zeichenfolgen- oder Binärdaten würden abgeschnitten.
      Die Anweisung wurde beendet.

      Comment


      • #4
        Dann wirst du vermutlich per UPDATE ... -Anweisung erst alle Text auf neue Maximallänge kürzen müssen.

        Comment


        • #5
          hm..würde ich ja machen..is nur dumm das in der Tabelle über 1000 Datensätze stehen..gibts da nicht noch ne andere möglichkeit

          Comment


          • #6
            Na und? Deine Update-SQL-Anweisung macht das doch in einem Rutsch.

            Code:
            UPDATE <MeineTabelle>
            SET <MeineSpalte> = SUBSTRING(<MeineSpalte>, 1, <NeueLänge>)
            WHERE Len(<MeineSpalte>) > <NeueLänge>

            Comment


            • #7
              yes....super..hat geklappt...->vielen dank!

              Comment

              Working...
              X