Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL सर्वर छवि कॉलम में pyodbc.Binary डेटा (BLOB) सम्मिलित करना

पहले सुनिश्चित करें कि आप with open(..) फ़ाइल को पढ़ने के लिए (एक और उदाहरण ए> ) यह फ़ाइल ऑब्जेक्ट को स्वचालित रूप से बंद कर देता है जब वे समाप्त हो जाते हैं या एक अपवाद उठाया गया है।

# common vars
connection = pyodbc.connect(...)
filename = 'Test.ics'
insert = 'insert into documents (name, documentType, document, customerNumber)'

# without hex encode
with open(filename, 'rb'):
    bindata = f.read()

# with hex encode
with open(filename, 'rb'):
    hexdata = f.read().encode('hex')

# build parameters
binparams = ('test200.ics', 'text/calendar', pyodbc.Binary(bindata), 1717)
hexparams = ('test200.ics', 'text/calendar', pyodbc.Binary(hexdata), 1717)

# insert binary
connection.cursor().execute(insert, binparams)
connection.commit()

# insert hex
connection.cursor().execute(insert, hexparams)
connection.commit()

# print documents
rows = connection.cursor().execute('select * from documents').fetchall()
for row in rows:
    try:
        # this will decode hex data we inserted
        print str(row.document).decode('hex')
    # attempting to hex decode binary data throws TypeError
    except TypeError:
        print str(row.document)

मुझे लगता है कि आपको 0x343234353... . मिल रहा है प्रबंधन स्टूडियो में परिणाम देखकर डेटा:

इसका मतलब यह नहीं है कि डेटा इस तरह से संग्रहीत किया जाता है, यह ठीक उसी तरह है जैसे प्रबंधन स्टूडियो image का प्रतिनिधित्व करता है , text , ntext , varbinary , आदि परिणाम फलक में डेटाटाइप।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ms sql सर्वर का उपयोग करके पूरे शब्द को बदलें

  2. SQL सर्वर प्रबंधन स्टूडियो (SSMS) क्या है?

  3. SQL सर्वर (T-SQL उदाहरण) में 'डेटाटाइम' को 'स्मॉलडेटटाइम' में बदलें

  4. SQL सर्वर के टाइमस्टैम्प कॉलम को डेटाटाइम फॉर्मेट में कैसे बदलें

  5. डेटाबेस में सभी प्राथमिक कुंजी की सूची प्राप्त करें