私はWalkthrough: Accessing a SQL Database by Using Type ProvidersF#の型プロバイダーSQL Serverの例
を読んで、私のテスト・データベースを使用して、それを働いています。これまでF#インタラクティブでこれを行っています:
#r "System.Data.dll"
#r "FSharp.Data.TypeProviders.dll"
#r "System.Data.Linq.dll"
open System
open System.Data
open System.Data.Linq
open Microsoft.FSharp.Data.TypeProviders
open Microsoft.FSharp.Linq
type dbSchema = SqlDataConnection<"Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=Test;Integrated Security=SSPI;">
今、このデータベースにはtestというテーブルがあります。例えばSSMSで:だから
、私は "TABLE1" と呼ばれるテーブルを持っていることがわかります。私が書く例を続ける:
let db = dbSchema.GetDataContext()
let table1 = db.table1
しかし、その後、私はエラーを取得する:
error FS0039: The field, constructor or member 'table1' is not defined
だから、私はここで間違って何をやっていますか? FYI
:F#コンパイラのバージョン11.0.60610.1
'db.'と入力すると何が表示されますか?補完によってテーブル名が提供されていますか?ファイル内に他のエラーがありますか? –
@Tomasと入力すると、完了は提供されていません。 (F#インタラクティブで実行すると、自動補完はサポートされないと思います)これまでに他のエラーはありません – user1443098
@Ed db.sys.tablesは機能しません: "エラーFS0039:フィールド、コンストラクタ、またはメンバ 'sys'が定義されていません"しかし、sys.tablesはビューであり、テーブルではありません。ビューにアクセスする別の方法がありますか? – user1443098