/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
MS SQL Server - Ekstra mellemrum?
Fra : Thomas Voller


Dato : 12-02-05 23:02

Hej DB-eksperter.


Jeg har overført en masse data fra en gammel Access-database til MS SQL
Server. Jeg brugte den "Import and Export Data" guide der kommer med MS SQL
Server 2000.

I tabellerne i SQL Server databasen er en del kollonner blevet til typen
"nchar". Det passede mig ikke så godt, så jeg ændrede felttypen til
"varchar". Problemet er, at der er kommet en hel masse mellemrum efter
teksten i de kollonner, der tidligere har været af typen "nchar".

Er der en let måde at få trimmet disse felter på? At få fjernet alle de
ekstra mellemrum? Der er måske en StoredProcedure eller noget?


Mvh. Thomas.



 
 
Bent Stigsen (12-02-2005)
Kommentar
Fra : Bent Stigsen


Dato : 12-02-05 23:41

[snip]
> I tabellerne i SQL Server databasen er en del kollonner blevet til typen
> "nchar". Det passede mig ikke så godt, så jeg ændrede felttypen til
> "varchar". Problemet er, at der er kommet en hel masse mellemrum efter
> teksten i de kollonner, der tidligere har været af typen "nchar".
>
> Er der en let måde at få trimmet disse felter på? At få fjernet alle de
> ekstra mellemrum? Der er måske en StoredProcedure eller noget?

Lidt copy-paste fra manualen
<quote>
*RTRIM*
Returns a character string after truncating all trailing blanks.

*Syntax*
RTRIM ( character_expression )

Is an expression of character data. character_expression can be a
constant, variable, or column of either character or binary data.
</quote>


/Bent

Thomas Voller (13-02-2005)
Kommentar
Fra : Thomas Voller


Dato : 13-02-05 00:30

"Bent Stigsen" <ngcdo@thevoid.dk> skrev
> Lidt copy-paste fra manualen
> <quote>
> *RTRIM*


Ja, jo... Men hvordan benytter man det? Jeg er helt grøn i SQL Server. De
data der skal trimmes liger i 2-3 forskellige tabeller. I hver tabel er der
5000+ rækker.



Mvh. Thomas.



Bent Stigsen (13-02-2005)
Kommentar
Fra : Bent Stigsen


Dato : 13-02-05 02:55

Thomas Voller wrote:
> "Bent Stigsen" <ngcdo@thevoid.dk> skrev
>
>>Lidt copy-paste fra manualen
>><quote>
>>*RTRIM*
>
> Ja, jo... Men hvordan benytter man det? Jeg er helt grøn i SQL Server. De
> data der skal trimmes liger i 2-3 forskellige tabeller. I hver tabel er der
> 5000+ rækker.

Kender ikke lige supermeget til Access, men det vil nok være identisk i
den. Du må have lavet opdateringsforespørgsler der, eller er det
altsammen pænt gemt væk bag guides?

Anyway, for at trimme en enkelt kolonne, vil du skulle bruge:

update tabelxx set kolonnexx=rtrim(kolonnexx)

Evt. kan du lave rettet kopi af tabellen:

select kolonne1, rtrim(kolonnexx) as kolonnexx, o.s.v...
into tabelyy
from tabelxx

Så vidt jeg husker er den indbyggede hjælp i sql manager/analyser
rimelig god (hvis man er til den slags).


/Bent

Lars Hoffmann (13-02-2005)
Kommentar
Fra : Lars Hoffmann


Dato : 13-02-05 12:35

Thomas Voller wrote:

> Ja, jo... Men hvordan benytter man det?

update min_tabel set felt = rtrim(felt)

Thomas Voller (13-02-2005)
Kommentar
Fra : Thomas Voller


Dato : 13-02-05 15:15

"Lars Hoffmann" <lars@intercambiodvd.com> skrev
> update min_tabel set felt = rtrim(felt)


Tak for hjælpen, begge to.



Mvh.



Søg
Reklame
Statistik
Spørgsmål : 177459
Tips : 31964
Nyheder : 719565
Indlæg : 6408195
Brugere : 218881

Månedens bedste
Årets bedste
Sidste års bedste