esquel....@gmail.com
unread,Jan 20, 2013, 4:46:57 PM1/20/13You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to
MySql server 5.0 + vb6
Salve a tutti,
conosco mysql da poco tempo (vengo da access). Sto cercando di usare dei campi BLOB con questa routine (vb6):
Dim fle As String
Dim ByteData() As Byte 'array di byte per i dati del Blob
Dim SourceFile As Integer
strSQL = "Select ID, FILE_APPUNTI from sedute WHERE ID = 1"
Set Rs = New ADODB.Recordset
Rs.CursorLocation = adUseServer 'testata sia lato server sia lato client
Rs.CursorType = adOpenDynamic
Rs.LockType = adLockOptimistic
Rs.Open strSQL, cnx
CommonDialog1.Filter = "(*.Docx;*.Doc;*.Rtf;*.Ods)|*.docx;*.doc;*.rtf;*.ods"
CommonDialog1.ShowOpen
fle= CommonDialog1.FileName
SourceFile = FreeFile
Open fle For Binary Access Read As SourceFile
FileLength = LOF(SourceFile) ' lunghezza del file
Debug.Print "Filelength is " & FileLength
If FileLength = 0 Then
Close SourceFile
MsgBox fle & " non trovato"
Exit Sub
Else
Numblocks = FileLength / BlockSize
LeftOver = FileLength Mod BlockSize
Set RsInsert = New ADODB.Recordset
'salva la lunghezza del file per il getchunck
RsInsert.Open "UPDATE sedute SET SIZE_FILE_APP=""" & LeftOver & """ WHERE ID=1;", ActiveConnection:=cnx
ReDim ByteData(LeftOver)
Get SourceFile, , ByteData()
Rs(1).AppendChunk ByteData()
ReDim ByteData(BlockSize)
For i = 1 To Numblocks
Get SourceFile, , ByteData()
Rs(1).AppendChunk ByteData()
Next i
Rs.Update '<---------------errore
Close SourceFile
End If
Tutto regolare, funzionava alla grande. Sennonché il problema è nato quando ho provato a gestire un file .doc di circa 5M -> Got a pachet bigger than max_allowed_packet bytes.
Ho provato un po' di tutto, sorapttutto ad aumentare la dimensione del parametro max_allowed_packet ma, per quanto grande lo facessi, il problema non si è risolto.
Qualcuno mi può aiutare?