Có thể mở cơ sở dữ liệu SQLite từ bên trong Microsoft SQL Server Management Studio không?


33

Có cách nào để mở tệp .db (tệp cơ sở dữ liệu SQLite) từ bên trong Microsoft SQL Server Management Studio không?

Ngay bây giờ chúng ta có một quy trình sẽ lấy dữ liệu từ cơ sở dữ liệu Microsoft SQL Server và đưa nó vào tệp cơ sở dữ liệu SQLite sẽ được một ứng dụng sử dụng sau này.

Có cách nào để mở tệp cơ sở dữ liệu SQLite để có thể so sánh với dữ liệu bên trong cơ sở dữ liệu SQL Server ... chỉ sử dụng một truy vấn SQL không?

Có một trình cắm cho studio quản lý sql microsoft không? Hoặc có thể có một cách khác để thực hiện nhiệm vụ tương tự này chỉ bằng một truy vấn.

Ngay bây giờ chúng ta phải viết hai tập lệnh ... một cho cơ sở dữ liệu máy chủ sql và một cho cơ sở dữ liệu sqlite ... sau đó lấy đầu ra từ mỗi tập tin có cùng định dạng và đặt chúng vào tập tin bảng tính OpenOffice của riêng chúng. Cuối cùng, chúng tôi so sánh hai tệp để xem có sự khác biệt nào không. Có lẽ có một cách tốt hơn để làm điều này.

Chỉnh sửa: Các cột và bố cục của bảng là khác nhau, do đó, sử dụng kết hợp của http://www.codeproject.com/KB/database/convsqlservertosqlite.aspxhttp://www.sqlitecompare.com/ sẽ không hoạt động ở đây.

PS Rất nhiều ứng dụng sử dụng SQLite trong nội bộ: Người dùng SQLite nổi tiếng


1
Các bạn đã thử SQL Server Compact / SQLite Toolbox visualstudiogallery.msdn.microsoft.com/...
SarjanWebDev

Bạn đã thử nó trước khi hỏi chúng tôi? Nếu bạn không có cơ sở dữ liệu Sqlite để dùng thử, đây là một mẫu tốt ... chinookdatabase.codeplex.com/doads/get/557773
Mawg

Câu trả lời:


13

Xin chào Có thể mở bất kỳ máy chủ sql nào từ bên trong studio quản lý khi bạn có trình điều khiển odbc chính xác để làm như vậy. Tạo kết nối ODBC đến tệp * .db3 và gọi nó là SQLite, sau đó thử đây là cửa sổ truy vấn

- cần phải là một kết nối hệ thống odbc không phải người dùng

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

Đây là cách bạn có được dữ liệu, bạn cũng có thể tạo chế độ xem bằng cách sử dụng sql này nếu bạn muốn

CHỌN * TỪ KHAI THÁC (SQLite, 'CHỌN * TỪ tbl_Postcode')


13

OP đang yêu cầu một cách để truy vấn giữa các DB và vì vậy tôi hiểu các phản hồi của máy chủ được liên kết. Tuy nhiên, nếu bạn ở đây vì đơn giản là bạn muốn mở db SQLite bằng MSSMS, điều đó dễ dàng hơn thế nhiều.

Gọi tôi là lười biếng, nhưng tất cả những câu trả lời này đều rất tốn công và / hoặc yêu cầu những điều bạn có thể không muốn làm, có quyền truy cập để làm trong mọi trường hợp hoặc chỉ là điều sai trái nếu tất cả những gì bạn đang tìm kiếm là điều gì đó tốt hơn hơn trình duyệt DB cho SQLite như MSSMS.

Chỉ cần sử dụng điều này: SQLServerCompactSQLiteToolboxforSSMS

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

Mở hộp công cụ nhỏ gọn Mở hộp công cụ nhỏ gọn

Thêm một kết nối thêm kết nối

Duyệt đến tập tin

nhập mô tả hình ảnh ở đây


7

Bạn có thể muốn tạo một máy chủ được liên kết, nếu bạn có nhà cung cấp cho SQLite mà SQL Server sẽ chấp nhận.

Kết nối với cơ sở dữ liệu của bạn và sau đó điều hướng qua "Đối tượng máy chủ", "Máy chủ được liên kết" và thêm một máy chủ được liên kết mới. Sau đó, bạn có thể sử dụng SQL Server để truy vấn cơ sở dữ liệu SQLite và so sánh trực tiếp kết quả.

Đây là một hướng dẫn cho MySQL, vì vậy nếu bạn có thể tạo kết nối ODBC cho SQLite thì bạn sẽ ổn.


7

Nếu bạn không thể cài đặt DNS hệ thống, thì các bước sau sẽ hoạt động:

  1. Cài đặt trình điều khiển SQLBC ODBC từ Ch. Werner (cả 32 và 64 bit?)
  2. Trong SSMS, đi đến Đối tượng máy chủ> Máy chủ được liên kết> Máy chủ được liên kết mới ... Máy chủ được liên kết mới ...
  3. Trong cửa sổ nhập:
    • Máy chủ được liên kết: VÍ DỤ (hoặc bất cứ điều gì)
    • Nhà cung cấp: Nhà cung cấp Microsoft OLE DB cho Trình điều khiển ODBC
    • Tên sản phẩm: ví dụ (hoặc bất cứ điều gì)
    • Chuỗi nhà cung cấp: Driver=SQLite3 ODBC Driver;Database=full/path/to/db; Thuộc tính máy chủ được liên kết

Bây giờ bạn có thể truy vấn SQLite DB bằng

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

như đã đề cập ở trên.


đối với bất kỳ ai sử dụng phương thức này, hãy sử dụng dấu gạch chéo về phía trước thay vì dấu gạch chéo ngược trong đường dẫn đầy đủ đến db
gordy

1

Có thể mở một loại cơ sở dữ liệu khác trong Management Studio. Tôi đã mở cơ sở dữ liệu Informix, sử dụng máy chủ được liên kết với máy chủ Informix.


1

Bạn sẽ cần trình điều khiển ODBC cho SQLite trước khi bạn có thể thiết lập máy chủ được liên kết, nhưng khi bạn đã cài đặt một trong những máy chủ đó trên máy chủ sql của mình, việc thiết lập một máy chủ được liên kết bằng cách sử dụng nó là tương đối dễ dàng.

Ví dụ sử dụng cơ sở dữ liệu SQLite "SpiceWorks"

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.