Avatar billede krogstrup Nybegynder
28. maj 2001 - 15:27 Der er 6 kommentarer og
1 løsning

Datatype der kan indeholde flest mulige tegn i MS SQL !

Jeg kom til at oprette mit spm i en forkert katagori først - derfor henviser jeg her blot til det første spm.:

http://www.eksperten.dk/spm/76487
Avatar billede krogstrup Nybegynder
28. maj 2001 - 16:59 #1
Når jeg prøver på at gemme data indeholdende over 100.000 tegn i et felt af typen \"text\" i en MS SQL database får jeg følgende fejl:

Provider error \'800a4005\'

Unknown runtime error

/sections/pages/update/edit/default.asp, line 12


Hvis jeg fjerner nogle data, således at antallet af tegn kommer under 100.000 kan det godt gemme mine data i tabellen...!

Hvad er der galt ?!?
Avatar billede theportal Nybegynder
28. maj 2001 - 19:43 #2
prøv ntext!
Avatar billede theportal Nybegynder
28. maj 2001 - 19:45 #3
Der burde ikke være nogle problemer med at gemme over 100.000 tegn, både text og ntext kan indeholde over 1 mio. tegn såvidt jeg ved!
Avatar billede nebula Nybegynder
28. maj 2001 - 21:45 #4
text kan indeholde 2gb (2,147,483,647 bytes) data. ntext er btw en unicode version af samme (og kan ligeså indeholde 2gb data - men kun halv så mange tegn), men det burde være ligegyldigt.

Jeg vil foreslå dig at benytte WRITETEXT/READTEXT funktionerne til operation på text felter. Det er da et forsøg værd?
Avatar billede krogstrup Nybegynder
29. maj 2001 - 09:36 #5
theportal >>>
Jeg har prøvet med ntext - det virkede heller ikke!

nebula >>>
Hvordan fungerer WRITETEXT? Kan du give et kodeeksempel?


Pt. ser koden således ud:

<!--#include virtual=\"/includes/asp/adoConstants.inc\"-->
<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"DRIVER=SQL Server;Server=SERVER;UID=Admin;PWD=xxx;Database=On2day;\"

strSQL = \"SELECT * FROM pages WHERE username = \'\" & Session(\"username\") & \"\'\"

set rs = Server.CreateObject(\"ADODB.Recordset\")

rs.CursorLocation = adUseClient
rs.CursorType = adOpenKeyset
rs.LockType = adLockOptimistic

rs.ActiveConnection = Conn

rs.Open strSQL

rs(\"page\" & ID & \"Text\") = Request(\"content\")

rs.Update

rs.Close
Set rs = Nothing
Conn.Close
Set Conn = Nothing
%>
Avatar billede nebula Nybegynder
30. maj 2001 - 22:46 #6
Uhm jeg ved ikke om det kan være derfor - men en dag jeg var ved at opsætte virtual directory for xml halløj i IIS - kunne jeg se at der var et felt der bestemte hvor meget data man maks kunne sende, nemlig 100.000 bytes. Det bekymre mig lidt - for jeg har ikke kunne finde et sted man kan opsætte det under IIS - kun under XML modulet. Men man kunne jo godt forstille sig at det var en sikkerheds-opsætning som gik igen i IIS?

Men prøv WRITETEXT (ja, jeg burde jo selv gøre det, men jeg er dovnen) WRITETEXT kan bruges på følgende måde:
WRITETEXT min_tabel.mit_felt TEXTPTR(\'min tekst\')
Avatar billede krogstrup Nybegynder
16. januar 2002 - 19:56 #7
lukker
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
Computerworld tilbyder specialiserede kurser i database-management

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