Microsoft SQL Server Management Studio内からSQLiteデータベースを開くことはできますか?


33

Microsoft SQL Server Management Studio内から.dbファイル(SQLiteデータベースファイル)を開く方法はありますか?

現在、Microsoft SQL Serverデータベースからデータを取得し、後でアプリケーションで使用されるSQLiteデータベースファイルに格納するプロセスがあります。

SQLiteデータベースファイルを開いて、SQL Serverデータベース内のデータと比較できるようにする方法はありますか?1つのSQLクエリのみを使用して?

Microsoft SQL Management Studio用のプラグインはありますか?または、1つのクエリのみを使用してこの同じタスクを実行する別の方法があるかもしれません。

現時点では、sqlサーバーデータベース用とsqliteデータベース用の2つのスクリプトを作成する必要があります。それぞれから同じ形式の出力を取得し、それぞれ独自のOpenOfficeスプレッドシートファイルに入れます。最後に、2つのファイルを比較して、違いがあるかどうかを確認します。おそらくこれを行うためのより良い方法があります。

編集:テーブルの列とレイアウトは異なるため、http://www.codeproject.com/KB/database/convsqlservertosqlite.aspxhttp://www.sqlitecompare.com/のコンボを使用してもここでは機能しません。

PS多くのアプリケーションが内部でSQLiteを使用しています:SQLiteの有名なユーザー


1
あなたは、SQL Server Compactの/ SQLiteのツールボックス試さ持っvisualstudiogallery.msdn.microsoft.com/...
SarjanWebDev

質問する前に試してみましたか?試してみるためのSqliteデータベースがない場合、これは良いサンプルです... chinookdatabase.codeplex.com/downloads/get/557773
Mawg

回答:


13

こんにちははい、適切なodbcドライバーがあれば、管理スタジオ内から任意のSQLサーバーを開くことができます。* .db3ファイルへのODBC接続を作成し、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を使用してビューを作成することもできます。

SELECT * FROM OPENQUERY(SQLite、 'SELECT * FROM tbl_Postcode')


13

OPはDB間でクエリを実行する方法を求めているため、リンクサーバーの応答を理解しています。ただし、単にMSSMSでSQLite dbを開きたいためにここにいる場合は、それよりもはるかに簡単です。

怠け者と呼んでも、これらの答えはすべて面倒であり、そして/または、あなたがしたくないかもしれないこと、あらゆる場合にアクセスできること、またはあなたが探しているのがより良いものである場合、ただ間違ったことですMSSMSなどのSQLiteのDBブラウザよりも。

これを使用するだけです:SQLServerCompactSQLiteToolboxforSSMS

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

Compact Toolboxを開きます Compact Toolboxを開きます

接続を追加する 接続を追加

ファイルを参照します

ここに画像の説明を入力してください


7

SQL Serverが受け入れるSQLiteのプロバイダーがある場合は、リンクサーバーを作成できます。

データベースに接続し、「サーバーオブジェクト」、「リンクサーバー」をナビゲートして、新しいリンクサーバーを追加します。その後、SQL Serverを使用してSQLiteデータベースを照会し、結果を直接比較できます。

ここであなたは、あなたが行ってもいいだろうSQLiteのためのODBC接続を作成することができそうだとすれば、MySQLのためのチュートリアルです。


7

システムDNSをインストールできない場合、次の手順が機能するはずです。

  1. Ch。からSQLite ODBCドライバーをインストールしますWerner(32ビットと64ビットの両方?)
  2. SSMSで、[サーバーオブジェクト]> [リンクサーバー]> [新しいリンクサーバー...]に移動します。 新しいリンクサーバー...
  3. ウィンドウで次を入力します。
    • リンクサーバー:EXAMPLE(または何でも)
    • プロバイダー:ODBCドライバー用のMicrosoft OLE DBプロバイダー
    • 製品名:例(または何でも)
    • プロバイダー文字列: Driver=SQLite3 ODBC Driver;Database=full/path/to/db; リンクサーバーのプロパティ

これで、SQLite DBにクエリを実行できるはずです。

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

上記のように。


この方法を使用して誰でも、全パス・ツー・DBに代えてバックスラッシュのスラッシュを使用
ゴーディ

1

Management Studioで別の種類のデータベースを開くことができます。Informixサーバーへのリンクサーバーを使用して、Informixデータベースを開きました。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.