Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
F#SqlProvider在PostgreSQL中找不到表_Postgresql_F# - Fatal编程技术网

F#SqlProvider在PostgreSQL中找不到表

F#SqlProvider在PostgreSQL中找不到表,postgresql,f#,Postgresql,F#,对于下面的代码,ctx找不到任何表。提供程序似乎正在与数据库建立连接,但只有以下功能: 清除更新 创造性连接 获取更新 提交日期 在智能感知中出现。我已经确认,完全相同的连接字符串可以工作,并且允许在直接使用NpgSql时查询表。我使用的是最新稳定版本的NpgSql、PostgreSQL和最新的SqlProvider预印本,在Visual Studio 2015的F#4.0下 打开FSharp.Data.Sql 让[]connectionString=@“服务器=127.0.0.1;池=fa

对于下面的代码,
ctx
找不到任何表。提供程序似乎正在与数据库建立连接,但只有以下功能:

  • 清除更新
  • 创造性连接
  • 获取更新
  • 提交日期
在智能感知中出现。我已经确认,完全相同的连接字符串可以工作,并且允许在直接使用NpgSql时查询表。我使用的是最新稳定版本的NpgSql、PostgreSQL和最新的SqlProvider预印本,在Visual Studio 2015的F#4.0下

打开FSharp.Data.Sql
让[]connectionString=@“服务器=127.0.0.1;池=false;用户Id=suave;密码=1234;数据库=alphamantiming;”
让[]npgPath=@“C:\projects\AlphaFront\packages\Npgsql.3.0.5\lib\net45”
类型sql=SqlDataProvider<
ConnectionString=ConnectionString,
DatabaseVendor=Common.DatabaseProviderTypes.POSTGRESQL,
ResolutionPath=npgPath,
单个Samount=1000,
UseOptionTypes=true>
设ctx=sql.GetDataContext()
ctx//intellisense中没有显示任何表

我发现问题在于用户权限不足。需要的权限超过默认权限。将用户设置为超级用户会起作用,但我认为还有比这更安全的选项。咨询您附近的DBA。

仅供参考-使用3.x版的Npgsql可能会有问题,例如,我更喜欢使用旧的2.x版来避免它。是的,我认为出于我的目的,我将不得不等到SQLProvider更成熟。我希望它能实现,这是一个好主意。
open FSharp.Data.Sql

let [<Literal>] connectionString = @"Server=127.0.0.1;Pooling=false;User Id=suave; Password=1234;Database=AlphamantisTiming;"
let [<Literal>] npgPath = @"C:\projects\AlphaFront\packages\Npgsql.3.0.5\lib\net45"
type sql = SqlDataProvider<
            ConnectionString = connectionString,
            DatabaseVendor = Common.DatabaseProviderTypes.POSTGRESQL,
            ResolutionPath = npgPath,
            IndividualsAmount = 1000,
            UseOptionTypes = true>


let ctx = sql.GetDataContext()
ctx. //no tables show up in intellisense