Avatar billede casperhojstrup Nybegynder
11. marts 2008 - 15:05 Der er 9 kommentarer og
1 løsning

Fejl i DB ved textfelt ?

Jeg har et website som kører fint, men har netop skiftet til en ny server og nu virker det ikke korrekt(har egne servere)

Jeg laver en SELECT
Jeg udskriver et record ved navn id som er int
og endnu en record ved navn notat som er longtext

længere nede på samme side udskriver jeg igen de to records (via det tidligere SELECT kald).

Det virker fint på den gamle server, men på den nye vil den nye skriver den første gang notat og id
og anden gang KUN id, men ikke notat (som den siger er null)

EKS:
(første gang)
ID NOTAT
10 Jeg går en tur

(anden gang)
ID NOTAT
10

De to servere har samme Windows version, samme MySQL version ?

Er der nogen der har set dette før ?
Det er et KÆMPE problem for mig.
Hvis 200 point ikke rækker må I spørge efter flere eller bede om kontanter
Avatar billede fennec Nybegynder
11. marts 2008 - 15:35 #1
Kender til problemet på MS-SQL men ikke på MySQL. Vil bare lige sikre mig at du snakker om MySQL, for så kan det være et andet problem end det jeg kender...
Avatar billede mitbrugernavn Praktikant
11. marts 2008 - 15:35 #2
nogle gange kan man ikke gentage samme rs - d.v.s.

response.write rs("test") og så længere ned af siden skrive det samme - så er man nødt til at lave

test = rs("test")
response.write test ' og så gentage dette længere ned

så du kan hente rs til et array og derefter splitte det til hvert select

hent = "1,2,3,4,5,6,7"

<select name="notat">
<%
arr_hent = split(hent,",")
for b = 0 to ubound(arr_hent)
%>
  <option value="<%=arr_hent(b)%>"><%=arr_hent(b)%>"></option>
<%
next
%>
</select>
Avatar billede mitbrugernavn Praktikant
11. marts 2008 - 15:36 #3
hvis jeg har forstået det korrekt ;-)))
Avatar billede casperhojstrup Nybegynder
11. marts 2008 - 22:58 #4
Hej "MitBrugerNavn"

Det er præcis det problem jeg snakker om.

Jeg er klar over at jeg kan flytte recordet til en variabel eller lave et array, men mit spørgsmå er:
Hvorfor kan man nogen gange ikke kalde recordet 2 gange ?
Skal serveren eller MySQL sættes anderledes op ?

...det er et K Æ M PE site jeg er ved at flytte og der vil være utrolig meget gennemgang af records og hvor de anvendes hvis jeg skal lave en variabel eller et array.
Derfor ønsker jeg egenlig bare at server1 kører som server2.
Ved du hvad problemet skyldes ?
Avatar billede casperhojstrup Nybegynder
12. marts 2008 - 09:03 #5
...og fennec: Det er MySQL
Avatar billede mitbrugernavn Praktikant
12. marts 2008 - 09:12 #6
phuu - hvis de er nøjagtig ens sat op så burde der ikke være noget problem - men det er der jo her ;-((( - jeg kan vist ikke hjælpe dig med mere - beklager. Men måske fennec kan - lad os håbe ;-))))
Avatar billede fennec Nybegynder
12. marts 2008 - 09:52 #7
Jeg har selv problemet med MS-SQL og der findes 2 løsninger:

1. Gem data i en variabel/array (mitbrugernavn's løsning)
2. Sæt nText kolonnen sidst på select listen: "select id, talKol, textKol, nTextkol from Tabel". Dette gælder for alle de store datatyper (nText, Blob, Image...)

Min egen observation er at det også hjælper hvis kolonnerne udskrives i den rækkefølge de selectes.

Jeg fandt engang er artikkel på MSDN om problemet, og der stod at det var "by design". Altså noget som bevist var lavet sådan. Har stadig ikke fundet ud af hvorfor de har valgt det. Mens jeg ledte efter den artikkel, som jeg desværre ikke fandt, faldt jeg over en anden:
http://www.interaktonline.com/Support/Knowledgebase/Technote/Details/153/47/Table+fields+of+type+NTEXT+do+not+display+right.html

Her fortælles at man skal have en provider på sin connectionstring. Jeg har ikke testet om det vil virke, men du kan jo prøve om det hjælper.
Avatar billede fennec Nybegynder
12. marts 2008 - 09:54 #8
... "by design" delen henviste til at nText skal stå sidst på select listen (punkt 2).
Avatar billede casperhojstrup Nybegynder
12. marts 2008 - 12:00 #9
Hej Fennec

Mange tak for hjælpen.
Du gav mig inspiration med den artikel du vedhæftede, som fik mig til at se min ODBC driver efter og det vister sig at der var en lille forskel.
Jeg havde version 3.51.13.00 på den ene maskine og 3.51.28.00 på den anden.

OG TÆNK !
Den nyeste driver er selvfølgelig den der virker dårligst.
Har ændret driver og alt virker nu.
Mange tak
... læg et svar. Det var dig der bidrog til løsningen.
Avatar billede fennec Nybegynder
12. marts 2008 - 12:31 #10
.o) <-- One Eyed Jack
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