AppendChunk method with SQL Server

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Bill

    AppendChunk method with SQL Server

    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.CreateOb ject("ADODB.Rec ordset")


    rs.cursortype = 1

    rs.cursorlocati on = 3

    rs.locktype = 3


    rs.Open sqlc, oConn

    iChunk = 254

    cTxtDescription = SQLReady(FileUp .Form(lang))

    For iNo = 1 to len(cTxtDescrip tion) step iChunk

    iStartAt = iNo

    cWorkString = mid(cTxtDescrip tion, iStartAt , iChunk )

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


    rs.Fields("Simp leChinese").App endChunk(cWorkS tring)

    Next

    IF Page_Err = "OK" THEN

    ' Perform the Query

    rs.Update

    rs.Close

    Set rs = Nothing

    Set oConn = Nothing

    END IF

    END IF



Working...