how to fetch splite3 blob data

조회 수: 6 (최근 30일)
xi
xi 2019년 3월 22일
편집: Bob S 2020년 11월 5일
sqlite() and fetch() function only works for one of these data types: double, int64, or char, But not for blob binary data chunk. I have two possible solutions:
  1. Use python to fetch the data of blob type and store in dataframe, but need to find a way to convert dataframe to structured data in matlab.
  2. "The sqlite object provides limited Database Toolbox™ functionality. For full functionality, create a database connection to the SQLite database file using the JDBC driver. To use the JDBC driver, close the SQLite connection and create a database connection using the URL string". But I cannot figure out how to do it.
Any suggestions?

답변 (1개)

Bob S
Bob S 2020년 11월 5일
편집: Bob S 2020년 11월 5일
You can access sqlite database tables, and BLOBs, using the Python interface:
>> dbFileName = 'myDatabase.db';
>> tableName = 'myTable'
% Say the field name is data and there is an id field whos value we're after is 300
>> sql = py.importlib.import_module('sqlite3');
>> conn = sql.connect(dbFileName);
>> cur = conn.cursor()
>> query = 'SELECT data FROM myTable WHERE id=300';
>> cur.execute(query);
>> res = cur.fetchone();
% The above returns a Python tuple containing the id and the blob. This gets you the data:
>> data = res{2}.uint8;

카테고리

Help CenterFile Exchange에서 Database Toolbox에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by