merci beaucoup thecoin d'avoir consacré du tps a mon pb!
bon je pense etre sur le point de le resoudre en fait :
j'ai donc mis un CLOB a la place du LONG et je fais un append ... (je savais mm pas que c'etait faisable, en fait je viens de decouvrir OO4O!)
donc pour ceux que ca interesse, je met une copie du code :
Code :
- <%
- Dim varOraSession
- Dim varOraDatabase
- Dim varOraDynaset
- Dim varSQL
- dim strSQL
- dim intMaxlength
- dim strContent
- strContent = "012345678901234567890123456789012"
- Set varOraSession = Server.CreateObject("OracleInProcServer.XOraSession" )
- Set varOraDatabase = varOraSession.OpenDatabase("MABASECOM", _
- "scott/tiger", 0)
- varOraSession.beginTrans
- Response.Write "OO4O Version:" & varOraSession.OIPVersionNumber & "<BR>" &_
- "Connect: " & varOraDatabase.connect & "<BR>" & _
- "DatabaseName: " & varOraDatabase.DatabaseName & "<BR>" & _
- "Oracle Version: " & varOraDatabase.RDBMSVersion & "<P>"
- if len(strContent) > 4000 then
- strSQL="UPDATE DEPT " & _
- "SET CONT='" & left(strContent, 3999) & "' where DEPTNO='10'"
- else
- strSQL="UPDATE DEPT " & _
- "SET CONT='" & left(strContent, 3999) & "' where DEPTNO='10'"
- end if
- varOraDatabase.executeSQL(strSQL)
- ' on concatene a la suite
- dim rsAppend
- dim intCount
- dim intStartChunk
- intMaxLength=int(len(strContent)\4000)
- strSQL="SELECT CONT FROM DEPT WHERE DEPTNO='10'"
- set rsAppend=varOraDatabase.CreateDynaset(strSQL, 0)
- rsAppend.edit
- for intCount=1 to intMaxLength
- intStartChunk=4000*intCount
- rsAppend.fields("CONT" ).appendChunk(mid(strContent, intStartChunk, 4000))
- next
- rsAppend.update
- rsAppend.close
- set rsAppend=nothing
- varOraSession.CommitTrans
- Set varOraDatabase = Nothing
- Set varOraDynaset = Nothing
- Set varOraSession = Nothing
- %>
|
apparement il est possible de faire ca avec un BIND aussi (que je viens de decouvrir aussi lol) et ca a l'air pas mal faudrait que je me penche sur le pb, mais la j'ai pris trop de retard!
Merci bcp en tout cas