all groups > sql server odbc > august 2004 >
You're in the

sql server odbc

group:

Problem with ntext field in asp page


Re: Problem with ntext field in asp page Brannon Jones
8/30/2004 11:59:22 AM
sql server odbc:
Have you tried using an UPDATE statement instead?

Something like "UPDATE mytable SET SimpleChinese = ? WHERE ....".

Bind your parameter as adLongVarWChar. Try setting the value of the
parameter directly (without using AppendChunk). If that doesn't work,
trying using AppendChunk.

If you try to update the field on the recordset, then you are relying on the
ADO Client Cursor Engine to process the update for you. You may be running
into a bug in the cursor engine. By using the UPDATE statement, you should
be able to bypass the cursor engine in this case.

Brannon

[quoted text, click to view]
Problem with ntext field in asp page Bill
8/30/2004 10:52:36 PM
Hi all,

I have an asp page that writes to an ntext field in SQL Server 2000.
All was going well until I had to put in a section of text greater than 8000
bytes.
Then I got a timeout error and the update wouldn't go through.
After reading that 2000 only accepts chunks of 8000 bytes or under at a
time, I attempted to use the AppendChunk method.
The code I wrote seems to work first time I enter text in the page, no
matter how big. But when I try to update the ntext file,
if it is more than 8K, it just sits there and nothing happens. Now I dont
even get a timeout error.
From what I read, I was assured this would work.
For small text files under 8K it works beautifully, I can add and remove
text and it all works fast.
But as soon as the ntext field gets beyond that size its totally unworkable,
and seems to be just the same as using the standard UPDATE method. I've
attached the code.

If anyone has any suggestions I would be eternally grateful, this is driving
me nuts. I've attached the offending code.

Thanks

Bill
' ***********************************************

' * PageStatus: SAVE Action: EDIT *

' ***********************************************

IF PageStatus = "SAVE" AND Action = "EDIT" THEN

sqlc = "SELECT * from " & tblName


Dim FldVal

Dim rs

Set rs = Server.CreateObject("ADODB.Recordset")


rs.cursortype = 1

rs.cursorlocation = 3

rs.locktype = 3


rs.Open sqlc, oConn

iChunk = 254

cTxtDescription = SQLReady(FileUp.Form(lang))

For iNo = 1 to len(cTxtDescription) step iChunk

iStartAt = iNo

cWorkString = mid(cTxtDescription, iStartAt , iChunk )

Response.Write "At byte " & iNo & vbCRLF & "<br/>"


rs.Fields("SimpleChinese").AppendChunk(cWorkString)

Next

IF Page_Err = "OK" THEN

' Perform the Query

rs.Update

rs.Close

Set rs = Nothing

Set oConn = Nothing

END IF

END IF


AddThis Social Bookmark Button