Avatar billede kroger Nybegynder
12. maj 2003 - 20:00 Der er 15 kommentarer og
1 løsning

SQL & text felter

Jeg har et text felt i en MSSQL database. Når jeg prøver at hente fra feltet, får jeg følgende fejl:

error '80020009'
Exception occurred.

/servicesiderne/sporgejorgen/sjoversigt.asp, line 117

Linje 117 ser sådan ud:

<%= trim(rs("spm")) %>

Og jeg ved det er text feltet den brokker sig over. Spm er hvordan jeg skal hente fra et text felt....
Avatar billede erikjacobsen Ekspert
12. maj 2003 - 20:05 #1
text i betydningen "ikke char/varchar" ?

Så er det fordi du SKAL hente du felterne i den rækkefølge de
står i tabellen, eller i din SELECT sætning.
Avatar billede -master-d- Nybegynder
12. maj 2003 - 20:05 #2
Feltet er tomt. Eller også er der en fejl i din SQL-statement.

Prøv med

<%
If not (rs.bof or rs.eof) then
trim(rs("spm"))
end if
%>
Avatar billede erikjacobsen Ekspert
12. maj 2003 - 20:05 #3
...og rygterne siger at der i en nyere driver ikke er den restriktion ;)
Avatar billede erikjacobsen Ekspert
12. maj 2003 - 20:07 #4
http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/Q175/2/39.asp&NoWebContent=1

siger at du skal have de "små" felter først, og så de "store" (text,
blob). Det er også muligt at det er den helt rigtige løsning,
når nu MS siger det.
Avatar billede -master-d- Nybegynder
12. maj 2003 - 20:09 #5
Det kan du have ret i erikjacobsen, men den fejlmeddelse plejer som regel at opstå hvis feltet er tomt og man så prøver at udskrive det.
Avatar billede kroger Nybegynder
12. maj 2003 - 20:11 #6
Ja det er felttypen text jeg hentyder til, og det er ikke tomt når jeg kigger i enterprise manager. Jeg prøvede din kode master d, men det gjorde ingen forskel.

Her er hele koden:
    <%
'Databaseforbindelse
Set objConn = Server.CreateObject("ADODB.Connection")
strConnection = "DSN=xxx;Database=xxxx;"
strConnection = strConnection  & "UID=xxxxxx;PWD=xxxxxxxxxxx;"
objConn.Open strConnection

pstChange = "Select * From sj_spm where id = " & Request.Querystring("id") & " order by id "

Set rs = objConn.Execute(pstChange)
Do
%>
<tr>
<td>
<font class="nx"><strong>
<%= Trim(rs("overskrift")) %><br></strong></font>
<br>
</td>
</tr>
<tr>
<td>
<font class="nx"><strong>Spørgsmål:</strong><br>
<%= trim(rs("spm")) %></font><br>
<br>
</td>
</tr>
<tr>
<td>
<font class="nx"><strong>Svar:</strong><br>
<%= Trim(rs("svar")) %></font>
</td>
</tr>

<%
  rs.Movenext
  Loop While Not rs.EOF
  objConn.Close
  Set rs = Nothing
  Set objConn = NOthing
  %>
Avatar billede -master-d- Nybegynder
12. maj 2003 - 20:12 #7
Du skal bruge

pstChange = "Select * From sj_spm where id = " & Request.Querystring("id") & " order by id Desc"

Eller

pstChange = "Select * From sj_spm where id = " & Request.Querystring("id") & " order by id ASc"
Avatar billede kroger Nybegynder
12. maj 2003 - 20:13 #8
feltet overskrift er et char felt, mens spm & svar er af typen text ....
Avatar billede erikjacobsen Ekspert
12. maj 2003 - 20:13 #9
Select overskrift,spm,svar From sj_spm ....
Avatar billede -master-d- Nybegynder
12. maj 2003 - 20:14 #10
Du skal angive hvordan du vil sortere, når du sorterer. Altså enten Desc eller Asc
Avatar billede erikjacobsen Ekspert
12. maj 2003 - 20:15 #11
Nej, man *skal* ikke. Man *kan*, masterd
Avatar billede kroger Nybegynder
12. maj 2003 - 20:16 #12
Du havde ret erik, jeg skiftede * med specifik hentning, og så lykkedes det. Tusind tak for hjælpen.

Og endu engang må jeg give dig uret masterd, det havde ingen betydning. Ellers tak for forsøget

Kyl lige et svar erik

M.V.H.
Kroger
Avatar billede erikjacobsen Ekspert
12. maj 2003 - 20:17 #13
et svar kylet
Avatar billede erikjacobsen Ekspert
12. maj 2003 - 20:18 #14
men i linket ovenfor står der meget om denne mystiske opførsel, som andre
end dig har fået mange grå hår over.
Avatar billede -master-d- Nybegynder
12. maj 2003 - 20:31 #15
Undskyld, jeg havde bare en opfattelse af en anden art, da jeg altid har brugt enten DESC eller ASC, da man jo bedst kan styre det den vej.

Men alle skal jo lære noget nyt en gang imellem.
Avatar billede erikjacobsen Ekspert
12. maj 2003 - 20:33 #16
Jeg vil også nok sige at det er god programmeringsskik at
anføre ASC selv om det er default.
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

IT-JOB

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Solution Manager til Cyberdivisionen

Politiets Efterretningstjeneste

Fagkoordinator til Netværkssektionen i PET

Carl Ras A/S

Digital Tech Lead