LoginSignup
2
0

More than 3 years have passed since last update.

SQLite型プロバイダを使う方法

Last updated at Posted at 2020-02-02

はじめに

SQLiteの型プロバイダを使おうとして嵌ったので備忘録として残しておきます。
// おそらく他のDB系の型プロバイダも同じ方法でできると思う。

方法

1. SqliteReadSample というプロジェクトを作成します。

スクリーンショット 2020-02-02 10.12.58.png

2. Visual Studio Code でプロジェクトを開きます。

スクリーンショット 2020-02-02 10.18.44.png

3. 必要なライブラリを nuget から導入します。

  • dotnet add package FSharp.Data
  • dotnet add package SQLProvider
  • dotnet add package System.Data.SQLite

4. 一度ビルドして必要なアセンブリを取得する

dotnet build -c Release

そうすると bin/Release/netcoreapp3.1/runtimes/osx-x64/native/netstandard2.0/SQLite.Interop.dll というdllが出力されているので、それを SqliteReadSample.fsproj と同じ階層にコピーします。

※ Windowsの場合は bin/Release/netcoreapp3.1/runtimes/win-x64/native/netstandard2.0/SQLite.Interop.dll を利用する.

cp bin/Release/netcoreapp3.1/runtimes/osx-x64/native/netstandard2.0/SQLite.Interop.dll ./

スクリーンショット 2020-02-02 10.34.51.png

5. 以下のようなDBを適当に用意する

スクリーンショット 2020-02-02 14.22.40.png

スクリーンショット 2020-02-02 14.24.12.png

スクリーンショット 2020-02-02 14.24.17.png

  • 作ったDBは SqliteReadSample.fsproj と同じ階層にコピーしておきます。 スクリーンショット 2020-02-02 14.28.14.png

6. あとは通常通りSQLiteの型プロバイダを利用するだけ

スクリーンショット 2020-02-02 14.44.48.png

- 実際にDBを作るときは、こんなヘンテコな名付けをしてはいけない(戒め
- SQLite.Interop.dll が .fsproj と同じ階層にないとビルドが失敗するのが許せない
- (TODO)どっかのタイミングでテーブルの連結とかのサンプルを足す

2
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0