Toon posts:

[SQL] hulp bij kiezen date type

Pagina: 1
Acties:

Verwijderd

Topicstarter
Door problemen in het verleden heb ik besloten mijn db en tabellenstructuur aan te gaan passen.
Een van die problemen is dat ik soms niet genoeg informatie kwijt kan in een record.
Zo heb ik nu nog 3 varchar velden met lengte 8000 maar in het verleden heb ik met regelmaat de foutmelding gekregen dat ik aan de limiet van mijn toelaatbare data zat (totaal per record, niet per veld).

Nu wil ik text of ntext gebruiken maar hier heb ik de groots mogelijke problemen mee als ik een zoek query gebruik om de data te doorzoeken. En als ik direct in de db (MS-SQL Server) wil editen
zie ik niet de inhoud maar <long text>...

Heeft iemand ideeen hoe ik dit kan tackelen?

  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Niet.

(N)TEXT velden worden op een andere manier opgeslagen dan 'gewone' char velden, en kun je niet op dezelfde manier zoeken en schrijven in deze velden.. Je moet de functies die daarvoor bedoeld zijn gebruiken (o.a. WRITETEXT, zoek maar eens in Books Online)

Wat je wel zou kunnen doen is je datamodel onder de loep te nemen, heb je echt zoveel gegevens in 1 record nodig, of kun je de boel ook splitsen?

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


Verwijderd

Topicstarter
Heb je echt zoveel informatie nodig..ja soms wel..(afgelopen jaar 4 keer op ongeveer 2400 items)
Opsplitsen kan maar dit zou ik echt als laatste optie willen zien.
Probleem is ook een beetje dat ik van te voren niet weet hoeveel data er in 1 van de 3 textvelden komt te staan. 8000 tekens is toch de max van zowel 1 varchar veld maar ook het totaal van record?
..zal ook even zoeken naar WRITETEXT..

[ Voor 6% gewijzigd door Verwijderd op 14-03-2005 10:18 ]


  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Verwijderd schreef op maandag 14 maart 2005 @ 10:15:
Heb je echt zoveel informatie nodig..ja soms wel..(afgelopen jaar 4 keer op ongeveer 2400 items)
Opsplitsen kan maar dit zou ik echt als laatste optie willen zien.
Probleem is ook een beetje dat ik van te voren niet weet hoeveel data er in 1 van de 3 textvelden komt te staan. 8000 tekens is toch de max van zowel 1 varchar veld maar ook het totaal van record?
Ja, ongeveer (beetje overhead) 8000 bytes is de max van 1 row. Als het echt niet anders kan zul je toch met de specifieke TEXT functies aan de gang moeten. Overigens, als het maar 4 keer op de 2400 keer gebeurd zo je ook een 'ExtraInformatie' tabel kunnen maken. Op het moment van toevoegen controleer je op de lengte van de inhoudn en als die te lang is voeg je een gedeelte van de tekst toe in een andere kolom. Bij het ophalen zul je dus moeten kijken of er voor het betreffende record ook een record in de extra informatie tabel is. Gevoelsmatig zeg ik dat je daar voor moet gaan, omdat TEXT velden toch wat eigenaardigheden met zich meebrengen.

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


Verwijderd

Topicstarter
TEXT is ook niet mijn voorkeur,
maar de optie die je beschrijft over de extra informatietabel spreekt mij wel aan..
zal eens gaan googelen. Bedankt!