Avatar billede dennisjuul Nybegynder
13. maj 2005 - 11:31 Der er 12 kommentarer og
2 løsninger

Problemer med indsættelse af tal i tabel

Hejsa!

Jeg har et problem med at indsætte en talværdi i en tabel.

Jeg har en variabel brugernr, som indeholder et ottecifret tal fra en SQL-server database (datatypen er nvarchar).

Tabellen opbygges dynamisk, og hver række indsættes med:
Response.Write("<td>"+brugernr);

Og det er her at problemet opstår, for ved visningen i tabellen "ædes" noget af tallet, hvis der er et eller flere nuller først i tallet.

Tallet 00000055 bliver til 55 i visningen.

Kan man undgå dette?

Dennis
Avatar billede kalp Novice
13. maj 2005 - 11:33 #1
Gør brugernr til et tekstfelt.

eller du får måske brug for sum'en er brugere?:P
Avatar billede dennisjuul Nybegynder
13. maj 2005 - 11:38 #2
Det skal helst gøres uden at ændre i datatyperne i databasen. Tallet bruges nemlig i andre sammenhænge mellem flere tabeller.
Avatar billede dennisjuul Nybegynder
13. maj 2005 - 12:13 #3
har lavet en brugernr.length og tallet fra databasen er de 8 karakterer som det skal, det er ved indsættelsen i tabellen at det går galt.
Avatar billede busschou Praktikant
13. maj 2005 - 12:16 #4
hmm prøv konvertere det til en streng
tal = rs("brugernr")
streng = tal & ""
Response.Write("<td>"+streng);
Avatar billede ldanielsen Nybegynder
13. maj 2005 - 12:50 #5
Det gir ingen mening, vi skal se hvordan du henter det ud af databasen og hvordan du henter det over i variablen brugernr

nvarchar er jo et tekstformat, så jeg vil tro at det sker når du siger

brugernr = rs("brugernr")

Du laver vel ikke brugernr = Cint(rs("brugernr"))?
Avatar billede dennisjuul Nybegynder
13. maj 2005 - 13:11 #6
Eksempel:
sql = "select brugernr from [tabel]";
rs = oConn.Execute(sql);
var brugernr = rs(0);

En brugernr.length giver 8 som det skal, men hvis jeg indsætter værdien i tabellen, går det galt.

Response.Write("<td>"+brugernr);
Avatar billede ldanielsen Nybegynder
13. maj 2005 - 13:25 #7
Laver du serverside JavaScript? Hvad med:

Response.Write("<td>" & brugernr);
Avatar billede ldanielsen Nybegynder
13. maj 2005 - 13:30 #8
det var ikke rigtigt, men prøv så dette

OK, prøv så dette
sql = "select brugernr from [tabel]";
rs = oConn.Execute(sql);
var brugernr = "" + rs(0);

Response.Write("<td>" + brugernr);
Avatar billede dennisjuul Nybegynder
13. maj 2005 - 13:41 #9
samme resultat...  :-(
Avatar billede ldanielsen Nybegynder
13. maj 2005 - 13:54 #10
Og du er HELT sikker på at brugernr er nvarchar?
Avatar billede busschou Praktikant
13. maj 2005 - 14:59 #11
bare nysgerrig... prøvede du mit foreslag?
Avatar billede dennisjuul Nybegynder
04. juli 2005 - 12:55 #12
Opgaven blev ændret til at brugernummeret ikke skulle vises, men i stedet brugernavn, så problemet er ikke aktuelt længere.

Hvis busschou og Idanielsen hver vil lægge et svar, så der kan gives point, tak.
Avatar billede busschou Praktikant
04. juli 2005 - 12:56 #13
oki doki :o)
Avatar billede ldanielsen Nybegynder
04. juli 2005 - 13:30 #14
OK
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
Kurser inden for grundlæggende programmering

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