Reading BLOB
Johan.Vervoort at utimaco.be
Johan.Vervoort at utimaco.be
Wed Jan 21 11:18:07 EST 2004
This is the sample code: It should dump all the certificates to the
certs directory...
What I suspect is that python thinks that the certif field is a STRING
and it's truncated when the first '\0' occurs...
(The data is stored completely in the database as an equivalent
C-program works fine...)
Sample output:
>>> reload (Test)
[('csernum', 'STRING', 80, 80, 0, 0, 0), ('certif', 'STRING', 0,
2147483647, 0, 0, 0)]
csernum
certif
import dbi, odbc
def ReadCmail():
result = { 'Result' : 'OK' }
# Microsoft Visual FoxPro ODBC DNS
# Database type: Free table directory
dbc = odbc.odbc('CEC')
cursor = dbc.cursor()
query = "SELECT CSERNUM,CERTIF FROM C_MAIL"
cursor.execute(query)
row = cursor.fetchone()
for row in iter(cursor.fetchone, None):
# Dump certif to file
FileName="C:\\CERTS\\%s.crt" % row[0]
CertFile = open(FileName, "wb")
CertFile.write(row[1])
CertFile.close()
print cursor.description
for tup in cursor.description:
print tup[0]
cursor.close()
dbc.close()
return result
ReadCmail()
On Wed, 21 Jan 2004 09:20:32 -0500, Peter Hansen <peter at engcorp.com>
wrote:
>Johan Vervoort wrote:
>>
>> How can I read a binary value from a blob via ODBC (Microsoft VFP
>> driver-win32all)? The value seems to be truncated at the first '\0'
>
>Maybe posting a very small snippet of code which reproduces the
>problem would help get you responses. I can't help, as I don't
>know what VFP driver-win32all is, but if there was example code I
>might be able to see the problem anyway, and others more expert in
>this area would likely see the problem right away.
>
>-Peter
More information about the Python-list
mailing list