Чи можливо відкрити базу даних SQLite з Microsoft SQL Server Management Studio?


33

Чи є спосіб відкрити .db файл (файл бази даних SQLite) з Microsoft Studio SQL Server Management Studio?

Зараз у нас є процес, який захопить дані з бази даних Microsoft SQL Server і помістить їх у файл бази даних SQLite, який згодом буде використаний додатком.

Чи є спосіб відкрити файл бази даних SQLite, щоб його можна порівняти з даними всередині бази даних SQL Server ... за допомогою лише одного запиту SQL?

Чи є плагін для студії управління microsoft sql? Або, можливо, є інший спосіб виконати це ж завдання, використовуючи лише один запит.

Зараз ми повинні написати два сценарії ... один для бази даних сервера sql і один для бази даних sqlite ..., а потім взяти вихід з кожного в тому самому форматі і помістити їх у свій власний файл електронної таблиці OpenOffice. Нарешті, ми порівнюємо два файли, щоб побачити, чи є різниці. Можливо, є кращий спосіб зробити це.

Редагувати: стовпці та макети таблиці відрізняються, тому використання комбінації http://www.codeproject.com/KB/database/convsqlservertosqlite.aspx та http://www.sqlitecompare.com/ тут не працюватиме.

PS Дуже багато програм використовують SQLite внутрішньо: відомі користувачі SQLite


1
Ви спробували SQL Server Compact / SQLite Toolbox visualstudiogallery.msdn.microsoft.com/…
SarjanWebDev

Ви спробували це, перш ніж запитати нас? Якщо у вас немає бази даних Sqlite, щоб спробувати це, це хороший зразок ... chinookdatabase.codeplex.com/downloads/get/557773
Mawg

Відповіді:


13

Привіт Так, відкрити будь-який сервер sql можна в студії управління, коли у вас є правильний odbc-драйвер. Створіть ODBC-з'єднання з файлом * .db3 і назвіть його чимось на зразок SQLite, тоді спробуйте це вікно запитів

- повинно бути системне з'єднання odbc, а не користувачем

EXEC sp_addlinkedserver 
   @server = 'SQLite', -- the name you give the server in studio 
   @srvproduct = '',
   @provider = 'MSDASQL', 
   @datasrc = 'SQLite' -- the name of the system odbc connection you created
GO

Ось як ви отримуєте дані, ви можете створювати представлення даних, використовуючи цей sql, також, якщо хочете

ВИБІР * З ВІДКРИТТЯ (SQLite, 'SELECT * FROM tbl_Postcode')


13

ОП просить спосіб запиту між БД, і тому я розумію відповіді сервера. Однак якщо ви тут, тому що просто хочете відкрити db SQLite за допомогою MSSMS, це набагато простіше цього.

Називайте мене ледачим, але всі ці відповіді є настільки трудомісткими та / або вимагають того, чого ви, можливо, не хочете робити, маєте доступ у будь-якому випадку, або це просто неправильна справа, якщо все, що ви шукаєте, - щось краще ніж браузер DB для SQLite, наприклад MSSMS.

Просто використовуйте це: SQLServerCompactSQLiteToolboxforSSMS

https://marketplace.visualstudio.com/items?itemName=ErikEJ.SQLServerCompactSQLiteToolboxforSSMS#overview

Відкрийте компактну панель інструментів Відкрийте компактну панель інструментів

Додати з'єднання додати з'єднання

Перейдіть до файлу

введіть тут опис зображення


7

Ви можете створити зв'язаний сервер, якщо у вас є постачальник для SQLite, який приймає SQL Server.

Підключіться до бази даних та перейдіть через "Об'єкти сервера", "Пов'язані сервери" та додайте новий пов'язаний сервер. Потім можна використовувати SQL Server для запиту бази даних SQLite та безпосередньо порівняння результатів.

Ось підручник для MySQL, тож якщо ви зможете створити ODBC-з'єднання для SQLite, вам буде добре.


7

Якщо ви не можете встановити системний DNS, слід виконати наступні дії:

  1. Встановіть драйвер SQLite ODBC від Ch. Вернер (і 32, і 64 біт?)
  2. У SSMS перейдіть до об’єктів сервера> пов'язані сервери> новий пов'язаний сервер ... Новий пов'язаний сервер ...
  3. У вікні введіть:
    • Пов'язаний сервер: ПРИКЛАД (або що завгодно)
    • Постачальник: Постачальник БД Microsoft OLE для драйверів ODBC
    • Назва продукту: приклад (або що-небудь)
    • Рядок постачальника: Driver=SQLite3 ODBC Driver;Database=full/path/to/db; Властивості пов'язаного сервера

Тепер ви можете мати можливість запитувати БД SQLite

SELECT * FROM OPENQUERY(EXAMPLE, 'SELECT * FROM tbl_Postcode;')

як зазначено вище.


для всіх, хто використовує цей метод, використовуйте косою косою рисою, а не звороту косу рису в повному шляху до дБ
gordy

1

В студії управління можливо відкрити інший тип бази даних. Я відкрив базу даних Informix, використовуючи приєднаний сервер до сервера Informix.


1

Вам потрібен драйвер ODBC для SQLite, перш ніж ви зможете встановити зв'язаний сервер, але як тільки ви встановите один із тих, що встановлені на вашому сервері sql, налаштувати зв'язаний сервер за його допомогою відносно просто.

Приклад використання бази даних SQLite "SpiceWorks"

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.