Toon posts:

[MSSQL] veld type converteren van "image" naar "text"

Pagina: 1
Acties:

Verwijderd

Topicstarter
Een veld in een bestaande tabel is van het type "image". Dit veld bevat tekst in RTF opmaak.
Dit veld moet geconverteerd worden naar het type "text", maar dit is niet mogelijk met de volgende SQL query:
code:
1
ALTER TABLE wfp CHANGE comment comment text


Is er een andere mogelijkheid om dit veld te converteren met behoud van de data in dat veld?

database type: MSDE2000A

  • Robbemans
  • Registratie: November 2003
  • Laatst online: 17-07-2025
Nee, althans als je het perse van het type text wil hebben en de data identiek.

Andere mogelijkheden:
- Converteren naar echte tekst (RTF tekst als string dus) en dat in je tekst veld plaatsen.
- Veld toeveoegen, data daarin

[ Voor 178% gewijzigd door Robbemans op 30-05-2006 09:10 ]


  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Je kunt geen TEXT kolom wijzigen van datatype. Sowieso is je ALTER syntax niet goed.

Een oplossing zou kunnen zijn om een nieuwe kolom toe te voegen, de data daarin te kopieeren en de oude te verwijderen.

Oops! Google Chrome could not find www.rijks%20museum.nl


Verwijderd

Topicstarter
Het is inderdaad een goed idee om een tijdelijk veld aan te maken en deze te vullen met de originele data en dit later weer terug te kopieeren. Daarom probeer nu het volgende:
code:
1
2
3
4
5
6
ALTER TABLE wf_assignment_procedure ADD comment_temp text;
UPDATE wf_assignment_procedure SET comment_temp = CAST(CAST(comment AS varbinary) AS varchar);
ALTER TABLE wf_assignment_procedure DROP comment;
ALTER TABLE wf_assignment_procedure ADD comment text;
UPDATE wf_assignment_procedure SET comment = comment_temp;
ALTER TABLE wf_assignment_procedure DROP comment_temp;


Maar een foutmelding verschijnt bij het verwijderen van het "comment" veld, namelijk: 'comment' id not a constraint

  • Robbemans
  • Registratie: November 2003
  • Laatst online: 17-07-2025
en [comment] ipv comment ?

Daarbij moet je er rekening mee houden dat de cast naar varchar een maximum van 8000 karakters overneemt.

[ Voor 68% gewijzigd door Robbemans op 30-05-2006 12:32 ]


Verwijderd

Topicstarter
Daar heb ik inderdaad rekening mee gehouden.
Alleen krijg ik nog wel de foutmelding "comment is not a constraint". Wat houd dit eigenlijk in?
Deze melding verschijnt wanneer de volgende regel wordt uitgevoerd:
code:
1
ALTER TABLE wf_assignment_procedure DROP comment

Verwijderd

Topicstarter
Het probleem met de conversie is inmiddels opgelost.
Bedankt voor alle hulp!
Pagina: 1