Avatar billede shm1976 Nybegynder
25. juli 2005 - 07:46 Der er 5 kommentarer

Hvorfor trimmes varvhar ved data fra MySQL til MS SQL

Jeg forsøger at importere data fra en MySQL database til MS SQl gennem Enterprise Manager. Det synes også at virke korrekt, men jeg oplever problemer med felter af typen Varchar, som det synes bliver uhensigtsmæssigt trimmet.

Forsøger jeg således at overføre en tom tabel, med et varchar felt, så sætter den længden til -1. Dette skaber en fejl, når tabellen så forsøges oprettet, mens et andet felt skæres ned fra varchar(10) til det nuværende maksimale antal tegn i posterne varchar(7).

Hvorfor vælger MS SQL at automatisk at trimme varcharfelter ?

Og er der nogen, som kender til en snedig måde at undgå dette problem på ?

mvh Søren
Avatar billede terry Ekspert
25. juli 2005 - 08:10 #1
what is the purpose of having empty spaces?
Avatar billede runesoft Nybegynder
25. juli 2005 - 08:41 #2
Grunden er jo nok at du importerer DATA fra MYSql, og at MSSql sikkert ikke kender ret meget til MYSql end hvordan man hiver data ud. Da den data du har ikke er længere end 7 er det klart at den ikke ved at feltet er større. Jeg vil ikke kalde det en trimning, da felter på 10 heller ikke eksisterer på din MYSql.

Jeg ville oprette min tabel i MSSal først og så importere data.
Avatar billede shm1976 Nybegynder
25. juli 2005 - 08:54 #3
Jeg skal bare høre når man angiver varchar(10) er det så fordi man maksimalt accepterer tekststrenge af længden 10 eller hvad er formålet med 10 ellers ?
Avatar billede terry Ekspert
25. juli 2005 - 09:03 #4
varchar(10) = maximum accepted string length

var = variable, and therefore can be less!
Avatar billede terry Ekspert
25. juli 2005 - 09:04 #5
varchar will only take up the place needed, a char(10) will always take up 10 characters
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester