小编use*_*098的帖子

Windows 上 Docker 容器中的 Postgresql:如何将数据保存到本地 Windows 文件夹

我正在尝试在 Windows 上的 docker 容器中运行 postgres。我还想将数据保存在 windows 文件夹中,所以我尝试了这个:

mkdir c:\pgdata

PS > docker run --name postgres -v c:\pgdata:/var/lib/postgresql/data -d postgres
d12af76bed7f8078babc0b6d35710dfc02b12d650904ed53ca95bb99984e9b36
Run Code Online (Sandbox Code Playgroud)

这似乎有效,但容器没有运行,日志讲述了一个不同的故事:

2019-07-24 23:19:20.861 UTC [77] FATAL:  data directory "/var/lib/postgresql/data" has wrong ownership
2019-07-24 23:19:20.861 UTC [77] HINT:  The server must be started by the user that owns the data directory.
child process exited with exit code 1
Run Code Online (Sandbox Code Playgroud)

如果我删除了 volume 选项,它会正常启动,但是我不会将我的数据库文件保存在我想要的位置。我在这里做错了什么?

postgresql docker windows-10

5
推荐指数
1
解决办法
4032
查看次数

.net Encoding.UTF8.GetString 相反

什么是补充方法 Encoding.UTF8.GetString

即,如果Encoding.UTF8.GetString将字节数组中的字节解码为字符串,那么用什么方法将字符串编码为字节数组中的字节,使得

var somestring == Encoding.UTF8.GetString(method(someString));
Run Code Online (Sandbox Code Playgroud)

是真的?

c# encoding

3
推荐指数
1
解决办法
3639
查看次数

带有不带引号的字符串参数的 SQL Server EXEC 是否有效?

我不小心调用了一个带有不带引号的字符串参数的存储过程。我预计会出现语法错误:

执行 (Transact-SQL)

如果参数的值为对象名、字符串或由数据库名或模式名限定,则整个名称必须用单引号括起来

但这有效:

CREATE PROC foobar @a VARCHAR(40) AS BEGIN SELECT @a END
go
EXEC foobar @a = abc
Run Code Online (Sandbox Code Playgroud)

这让我很惊讶!我尝试了 SQL Server 2008、2012 和 2016 版。我是否遗漏了什么,或者这只是一个未记录的“功能”?

sql-server

3
推荐指数
1
解决办法
166
查看次数

postgresql bigint 太大?

跑步

x86_64-pc-linux-gnu 上的 PostgreSQL 11.4 (Debian 11.4-1.pgdg90+1),由 gcc 编译 (Debian 6.3.0-18+deb9u1) 6.3.0 20170516,64 位

我尝试过这个声明:

SELECT CAST (2^63-1 as bigint);
Run Code Online (Sandbox Code Playgroud)

但收到意外的错误消息:

bigint 超出范围

奇怪的是,如果我只是用其等效的整数替换指数形式:

SELECT CAST (9223372036854775807 as bigint)
Run Code Online (Sandbox Code Playgroud)

它按预期工作。我想这只是我没有正确理解事情。FWIW我可以使用的指数表示法中的最大数字是这样的:

SELECT CAST (2^63-513 as bigint);
Run Code Online (Sandbox Code Playgroud)

任何更大的东西都会以同样的方式出错。

关于 PostgreSQL 如何求幂,我缺少什么?或者,它是否被转换为浮点数并返回,并且我看到舍入/截断错误?

postgresql exponential

3
推荐指数
1
解决办法
670
查看次数

F#使用匹配来验证参数

我正在学习F#.我想知道验证输入参数的最佳实践.在我的天真中,我以为我可以这样做:

let foo = match bar with
| <test for valid> -> bar
| _ -> "invalid"
Run Code Online (Sandbox Code Playgroud)

当然,由于不匹配的类型,这不起作用.所以我希望看到F#程序员用于此类事情的模式.比赛?如果/然后/别的吗?

别的什么?

validation parameters f# match

2
推荐指数
1
解决办法
746
查看次数

F#变量赋值的键值对列表

给出键/值对的列表:

do 
    [("A", 1);("B",2)]
    |> (fun list -> 
            for item in list do
                match item with
                | ("A", x) -> //expression assigning x to variable "A"
                | ("B", x) -> //expression assigning x to variable "B"
                | _ ->  //default expression
       )
Run Code Online (Sandbox Code Playgroud)

是否有一些我能写的表达式可以完成同样的事情

let A = 1
let B = 2
Run Code Online (Sandbox Code Playgroud)

我事先知道列表中的项目不超过10项,并且项目是<string,int>的元组,但事先并不知道"A"或"B"或其他键是否存在或者是否存在列表是空的.

基本上,将列表分解为一组类型变量.

更新:关于上下文的注释

在我的应用程序中,我从一个不同团队维护的上游程序中收到一个键/值对列表.我希望某些键位于列表中,我想将其分配给类型变量以供以后处理.如果我需要的东西丢失,我会抛出异常.但是我不希望被锁定到任何给定的变量名称集,除了预期的变量名称.对于所有这些,我希望能够在运行时分配它们.

variables f# list

2
推荐指数
1
解决办法
235
查看次数

如何在 Windows 上使用 Vscode 解决 UNABLE_TO_GET_ISSUER_CERT_LOCALLY

在 Windows 上使用 VS Code 打开 SQL 脚本时,我收到以下消息:

正在初始化 mssql 扩展的 SQL 工具服务。注意:安装服务后,mssql 命令将可用。

平台:win32、x86_64 (Windows)

将 SQL 工具服务安装到 c:\Users\BRITTG2.vscode\extensions\ms-mssql.mssql-1.8.0\sqltoolsservice\1.8.0\Windows。下载 https://download.microsoft.com/download/e/7/8/e781cf8f-9c3f-4ad5-bd0c-f3c62b8bc6bd/microsoft.sqltools.servicelayer-win-x64-netcoreapp2.2.zip [错误] 错误:请求错误:UNABLE_TO_GET_ISSUER_CERT_LOCALLY

我该如何解决这个错误?请注意,我是一家公司的幕后黑手。固件

sql certificate visual-studio-code

2
推荐指数
1
解决办法
3024
查看次数

SQL Server LocalDB 错误(“父实例无效”)

我安装了 SQL Server 2012 本地数据库 从此下载

选择 ENU\x64\SqlLocalDB.MSI

我运行正常,然后尝试使用该sqllocaldb命令,出现此错误:

PS C:\WINDOWS\system32> sqllocaldb start mssqllocaldb 
Run Code Online (Sandbox Code Playgroud)

由于以下错误,LocalDB 实例“mssqllocaldb”的启动失败:
LocalDB 实例 API 方法调用内发生意外错误。
有关错误详细信息,请参阅 Windows 应用程序事件日志。

日志是这样说的:

Windows API 调用 RegOpenKeyExW 返回错误代码: 2. Windows 系统错误信息是:系统找不到指定的文件。在第 967 行报告。

LocalDB 父实例版本无效:MSSQL12E.LOCALDB

Windows API 调用 GetSvcBinPathByInstName 返回错误代码: 2. Windows 系统错误信息是:系统找不到指定的文件。在第 3546 行报告。

sql-server sql-server-2012 localdb

1
推荐指数
1
解决办法
1178
查看次数

git show命令无结果

试图理解这一点:

PS C:\Users\BRITTG2\source\repos\tbsm.canoe.core (feature/bau-1057)
> git ls-files | sls Filtered

Projects/TBSM.Canoe.Core/TBSM.Canoe.Core.Common/TBSM.Canoe.Core.Common.Domain/Certificates/FilteredCertificates.cs
Run Code Online (Sandbox Code Playgroud)

为什么git show不显示blob并且也不给出错误?

PS C:\Users\BRITTG2\source\repos\tbsm.canoe.core (feature/bau-1057)
> git show Projects/TBSM.Canoe.Core/TBSM.Canoe.Core.Common/TBSM.Canoe.Core.Common.Domain/Certificates/FilteredCertificates.cs

PS C:\Users\BRITTG2\source\repos\tbsm.canoe.core (feature/bau-1057)
>
Run Code Online (Sandbox Code Playgroud)

为了比较

    > cat Projects/TBSM.Canoe.Core/TBSM.Canoe.Core.Common/TBSM.Canoe.Core.Common.Domain/Certificates/FilteredCertificates.cs
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Threading.Tasks;
etc.
Run Code Online (Sandbox Code Playgroud)

更新:

以下第一个答案有效:

git show HEAD:yourfile
Run Code Online (Sandbox Code Playgroud)

有没有一种方法可以在show命令中指定通配符,以便我可以在没有完整(可能很长)路径的情况下显示文件?

git show

1
推荐指数
1
解决办法
33
查看次数

F#comprehension loop vars是否可变?

在列表comp.例如,变量是否使用了与let stmt中状态相同的实变量?如果是这样,它实际上是可变的,对吗?它每次都围绕循环被绑定到一个新的东西吧?

variables f# list-comprehension mutable

0
推荐指数
1
解决办法
154
查看次数