31. juli 2003 - 09:04
Der er
20 kommentarer og 1 løsning
sammensætning af tlf numre
update tabelnavn set tlf = substring(phone,1,2) || substring(phone, 3,2) || substring(phone, 5,2) Virker ikke... update tabelnavn set phone = replace(' ','',phone) fik slettet alle tlf numre :( ...hvad skriver jeg?
Annonceindlæg fra Cognizant
YEz... ...er lige i gang med at restore mine data igen, så prøver jeg!
incorrect syntax near ',' men nu brokker den sig da ikke over || ...hvad så nu? ;)
phone - hvad er det? et felt i selve tabellen?
ja, phone er et felt ...den anden string jeg skrev virkede jo også, så det må være ok...
angående den replace... jeg har aldrig selv brugt replaces i SQL, men i ASP ville det være phone som stod først... prøv det engang (på et enkelt record så databasen ikke slettes :p)
hmmm mærkelig... nu kørte scriptet, men med fejl... og mine tlf numre er da helt fucked up nu :( har nu 3344 og 33 44 altså kun numre på 4 tegn, arg!
jeg hiver lige mine gamle data tilbage igen igen, så er jeg klar til at prøve noget nyt...
porøv update tabelnavn set tlf = substring(phone,0,2) + substring(phone, 2,4) + substring(phone, 4,6) + substring(phone, 6,8) hvis det ikke virker, så måske med ||
31. juli 2003 - 10:12
#10
"string or binary data would be truncated the statement has been terminated"
31. juli 2003 - 10:13
#11
prøv at lave en select på det først, og se hvad resultatet er... select top 1 [temp] = substring(phone,0,2) + substring(phone, 2,4) + substring(phone, 4,6) + substring(phone, 6,8) tabelnavn FROM tablenavn
31. juli 2003 - 10:23
#12
select top 1 [temp] = substring(phone,0,2) + substring(phone, 2,4) + substring(phone, 4,6) + substring(phone, 6,8) FROM crm5.phone giver 7010202201201 det er jo lidt grimt tal...
31. juli 2003 - 10:24
#13
select top 1 [temp] = substring(phone,1,2) + substring(phone, 3,4) + substring(phone, 5,6) + substring(phone, 7,8) FROM crm5.phone prøv engang det
31. juli 2003 - 10:29
#14
nu forstår jeg så ikke helt hvad det skal bruges til... i "phone" står der vel allerede telefonnummeret!? Hvorfor så danne det en gang til?
31. juli 2003 - 10:34
#15
SELECT SUBSTRING(CONVERT(nvarchar(8), phone), 1, 2) + SUBSTRING(CONVERT(nvarchar(8), phone), 3, 2) + SUBSTRING(CONVERT(nvarchar(8), phone), 5, 2) + SUBSTRING(CONVERT(nvarchar(8), phone), 7, 2) AS Expr1 det her giver i hvert fald det rigtige telefonnummer.
31. juli 2003 - 10:35
#16
update tabelnavn set tlf = SUBSTRING(CONVERT(nvarchar(8), phone), 1, 2) + SUBSTRING(CONVERT(nvarchar(8), phone), 3, 2) + SUBSTRING(CONVERT(nvarchar(8), phone), 5, 2) + SUBSTRING(CONVERT(nvarchar(8), phone), 7, 2) update tabelnavn set phone = replace(phone,' ','') det burde virke.
31. juli 2003 - 10:51
#17
jeg skal ikke danne et tlf nummer, der står tlf numre allerede, men de er en blanding af 33 44 55 66 og 33445566 typen, jeg ønsker at fjerne mellemrum i dem som har mellemrum...
31. juli 2003 - 12:45
#18
nåå... det kunne du jo bare have sagt :s update tabelnavn set phone = replace(phone,' ','') det burde være det som skal til...
31. juli 2003 - 16:02
#19
- gennemgå venligst dine åbne spm., tak. Vi er flere, der afventer respons.
01. august 2003 - 10:57
#20
YEAH!!!! update tabelnavn set phone = replace(phone,' ','') Dét kan vi lide... Point er dine!
01. august 2003 - 12:02
#21
:) næste gang skulle du bare have spurgt "Hvordan fjerner jeg med SQL alle mellemrum i en streng?" og det havde været klaret hurtigere ;) men tak for points.
Computerworld tilbyder specialiserede kurser i database-management