AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken VARCHAR-Spalte durch CLOB ersetzen
Thema durchsuchen
Ansicht
Themen-Optionen

VARCHAR-Spalte durch CLOB ersetzen

Ein Thema von Jumpy · begonnen am 26. Sep 2014 · letzter Beitrag vom 26. Sep 2014
 
Dejan Vu
(Gast)

n/a Beiträge
 
#9

AW: VARCHAR-Spalte durch CLOB ersetzen

  Alt 26. Sep 2014, 12:16
SSMS verwendet lustigerweise den 'alter table' Befehl selbst nicht, wenn man im Designer einen Feldtyp ändert, sondern geht den Weg über eine temporäre Tabelle, pseudocode:
To change column X to datatype Y in Table T:
  1. create table T_tmp with column 'X' as 'Y'
  2. copy all fields from T to T_tmp
  3. drop table T
  4. rename T_tmp to T
  5. rebuild all indexes, constraints and stuff on T

Das scheint schneller zu gehen, als ein das alter table. Bei bestimmten Aktionen stimmt das auch.
Ich denke, wenn Du das in eine Transaktion packst, kannst Du einfach den ALTER-Befehl nehmen.
Code:
begin transaction
alter table bar alter column foo CLOB
select * from bar
rollback transaction
wenn Du mit dem Resultat zufrieden bist, machst Du aus dem rollback ein commit und führst das Skript nochmal aus. So mach ich das immer. Der Vorteil ist ja, das man -wenn das Teil abschmiert- das Rollback auch per Hand ausführen kann.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:01 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz