I have the sqlite3 installed in my Windows 10 64-bits. In order to have communication between sqlite3 and other Windows apps, I installed the SQLite3 ODBC Drivers (from www.ch-werner.de/sqliteodbc).
Until now I have accomplished to connect the sqlite3 database to Excel and to SQL Server.
However, in the SQL Server, some errors arise.
To register the sqlite3 server I run:
<strong>
EXEC sp_addlinkedserver
@server= 'SQLITE3'
, @provider= 'MSDASQL.1'
, @provstr= 'DRIVER={SQLite3 ODBC Driver};DATABASE=C:\Users\me.me\Desktop\My Directory\mydb.db;Persist Security Info=True;StepAPI=0;SyncPragma=NORMAL;NoTXN=0;Timeout=100000;ShortNames=0;LongNames=0;NoCreat=0;NoWCHAR=0;FKSupport=0;JournalMode=;OEMCP=0;LoadExt=;BigInt=0;JDConv=0;Initial Catalog=log;'
;
EXEC sp_testlinkedserver [SQLITE3]; -- completed successfully!
</strong>
Now, the following runs ok:
<strong>
SELECT s FROM OPENQUERY([SQLITE3],'select s from log') AS t;
</strong>
But, I can't make an update:
<strong>
UPDATE OPENQUERY([SQLITE3],'select s from log') SET s='hello'
</strong>
<p style="color: red;">
OLE DB provider "MSDASQL.1" for linked server "SQLITE3" returned message "Este fornecedor não suporta acessores nulos.". <i>(This provider doesn't support null accessors...)</i>
OLE DB provider "MSDASQL.1" for linked server "SQLITE3" returned message "Este fornecedor não suporta acessores nulos.".
Msg 7330, Level 16, State 2, Line 27
Cannot fetch a row from OLE DB provider "MSDASQL.1" for linked server "SQLITE3".
</p>
Also, the following doesn't run:
<strong>
SELECT s FROM [SQLITE3]...[log] AS t
</strong>
<p style="color: red;">
Msg 7318, Level 16, State 1, Line 29
The OLE DB provider "MSDASQL.1" for linked server "SQLITE3" returned an invalid column definition for table "log".
</p>
Could anyone help me on these two issues?