/ 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
MSSQL : insert en / i en tabel ?
Fra : Ingrid


Dato : 10-12-03 12:05

Nu har jeg kigget på det i en time, men kan ikke finde løsnignen.

Jeg vil gøre følgende:

UPDATE testtabel
SET Billede = 'img/' + Billede

altså tilføje 'img/' til et felt. Men MSSQL forstår mig ikke. Jeg er
højstsandsynligt nødt til at escape mit / men hvordan gør jeg det ? Jeg kan
simpelthen ikke finde løsningen.

Er der nogen der kan hjælpe ?


--
Ingrid



 
 
Jens Gyldenkærne Cla~ (10-12-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 10-12-03 12:49

Ingrid skrev:

> UPDATE testtabel
> SET Billede = 'img/' + Billede

Virker fint her (MSSQL2000). Hvor kører du din forespørgsel og hvad
svarer applikationen?

> altså tilføje 'img/' til et felt. Men MSSQL forstår mig ikke.
> Jeg er højstsandsynligt nødt til at escape mit / men hvordan
> gør jeg det ? Jeg kan simpelthen ikke finde løsningen.

Tegnet / skal ikke escapes. Prøv at køre følgende batch:


-- Brug den temporære database
use tempdb
go

-- Opret en testtabel
create table test (billede varchar(50))
go

-- Indsæt en værdi
insert into test values ('pic.png')

-- Opdater værdien
update test set billede = 'img/' + billede

-- Vis indholdet af tabellen
select * from test

-- Fjern tabellen igen
drop table test
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Ingrid (10-12-2003)
Kommentar
Fra : Ingrid


Dato : 10-12-03 12:57

Hej Jens

> Tegnet / skal ikke escapes. Prøv at køre følgende batch:

[snip]

Jeg har kørt din batch og den kørte fint ! Så der blev jeg lidt mistænksom,
og så viser det sig så at den brokker sig fordi mit billede felt ikke var
længe nok til at indeholde den nye værdi. Nu har jeg udvidet den og
problemet er løst. Hvis SQLserver bare kunne sende en brugervenlig
fejlmeddelelse

Du har virkelig hjulpet mig meget, tusind tak for det !

Hilsen
Ingrid



Peter Lykkegaard (10-12-2003)
Kommentar
Fra : Peter Lykkegaard


Dato : 10-12-03 13:59


"Ingrid" wrote in a message

> Hvis SQLserver bare kunne sende en brugervenlig
> fejlmeddelelse
>
Hvad var fejlmeddelsen?
Det kan være at den er oplagt alligevel

- Peter



Jens Gyldenkærne Cla~ (10-12-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 10-12-03 14:11

Peter Lykkegaard skrev:

> Hvad var fejlmeddelsen?
> Det kan være at den er oplagt alligevel

Mon ikke det er samme fejl som denne (fremprovokeret ved at
formindske feltstørrelsen i batchkørslen fra mit første indlæg):

   Server: Msg 8152, Level 16, State 9, Line 1
   String or binary data would be truncated.
   The statement has been terminated.

Her er nøglen til forståelse at man ved hvad "truncated" betyder
( = afkortet).
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Peter Lykkegaard (10-12-2003)
Kommentar
Fra : Peter Lykkegaard


Dato : 10-12-03 14:37


"Jens Gyldenkærne Clausen" wrote in a message

> Peter Lykkegaard skrev:
>
> > Hvad var fejlmeddelsen?
> > Det kan være at den er oplagt alligevel
>
> Mon ikke det er samme fejl som denne (fremprovokeret ved at
> formindske feltstørrelsen i batchkørslen fra mit første indlæg):
>
> Server: Msg 8152, Level 16, State 9, Line 1
> String or binary data would be truncated.
> The statement has been terminated.

Sandsynligvis, kan være at ADO? kommer med en anden fejl

>
> Her er nøglen til forståelse at man ved hvad "truncated" betyder
> ( = afkortet).

Trunkeret - godt gammelt dansk ord

- Peter



Ingrid (10-12-2003)
Kommentar
Fra : Ingrid


Dato : 10-12-03 14:49

> Server: Msg 8152, Level 16, State 9, Line 1
> String or binary data would be truncated.
> The statement has been terminated.

Ja det var netop fejlmeddelelsen, og nu ved jeg også godt hvad truncated
betyder, men havde bare ikke lagt linket til at feltet måske kunne være for
lille ! Dum som jeg er

Ingrid



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408925
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste