小编nih*_*il0的帖子

无法使用 sqlcmd 通过 SSH 隧道访问 SQL 数据库

我需要通过跳转盒(Azure VM)从本地计算机连接到 Azure SQL DB。我使用以下命令设置端口转发:

ssh -fN -L 41433:my-db.database.windows.net:1433 me@jump-box
Run Code Online (Sandbox Code Playgroud)

我可以确认隧道已设置,因为在详细模式下我看到了消息

Local connections to LOCALHOST:41433 forwarded to remote address my-db.database.windows.net:1433
Run Code Online (Sandbox Code Playgroud)

现在,当我跑

sqlcmd -S 127.0.0.1,41433 -U username -P password -d db 
Run Code Online (Sandbox Code Playgroud)

我收到以下错误消息

Sqlcmd: Error: Microsoft ODBC Driver 13 for SQL Server : [Microsoft][ODBC Driver 13 for SQL Server]
[SQL Server]Cannot open server "127.0.0.1" requested by the login.  The login failed..
Run Code Online (Sandbox Code Playgroud)

我已经确保/etc/ssh/sshd_config有线条GatewayPorts yesAllowTcpForwarding yes

有人可以帮我弄清楚我做错了什么吗?

ssh sqlcmd azure ssh-tunnel azure-sql-database

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

遍历F#中Azure存储类型提供程序生成的类型

我试图了解F#中的类型提供者以及它们可以用于什么.我有以下问题:

我在Azure Blob存储中有一系列JSON对象,存储方式如下:

container/YYYY/MM/DD/file.json
Run Code Online (Sandbox Code Playgroud)

我可以使用类型提供程序轻松导航到给定日期的特定文件.例如,我可以将JSON对象作为5月5日的字符串访问

type Azure = AzureTypeProvider<"ConnectionString">
let containers  = Azure.Containers.``container``.``2017/``.``05/``.``05/``.``file.json``.Read()
Run Code Online (Sandbox Code Playgroud)

如何获取用户输入日期字符串,说"2017-05-05"并以类型安全的方式获取相应的JSON对象?我应该使用类型提供商吗?

f# functional-programming azure type-providers

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

如何在没有`var`的情况下重写这段代码?

我有以下代码,以根据索引1处的数组元素的值返回不同的对象

const myArray = Array(1,2,3)
const myOtherArray = Array(1,3,4) 
const myThirdArray = Array(1,5,7)

// Creates object from array and prints it
let toObject = function(x){
  var myObject
  if (x[1] == 2){
     myObject = {first: x[0],
      second: x[1],
      third: x[2]
    }
  }
  else if (x[1] == 3){
     myObject = {first: x[0],
      second: x[1]-1,
      third: x[2]
    }
  }
  else {
     myObject = {first: x[0],
      second: x[1]+1,
      third: x[2]
    }
  }
  
  return myObject
}

console.log(toObject(myThirdArray))
Run Code Online (Sandbox Code Playgroud)

上述实现的问题是我定义myObject并使用赋值语句.我想以"纯粹功能"的方式实现这一点,即避免可变性.在Scala或Haskell中,我想我可以使用模式匹配,但是如何在Javascript中完成此操作?是否可以在不使用的情况下实现这一点var

javascript functional-programming ecmascript-6

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

在F#中使用Seq.map和Array.map作为相同代码时的不同输出

我有一个简单的基于事件的FizzBu​​zz实现如下

// Events in F#

type FizzBuzz() =
    let _event = Event<int>()

    member this.Event = _event.Publish
    member this.Check n = _event.Trigger n 

// Instantiate
let fizzBuzzer = FizzBuzz()

// Add an event handler
fizzBuzzer.Event.Add (function
    | x when x%5=0 && x%3=0 -> printfn "FizzBuzz"
    | x when x%3=0 -> printfn "Fizz"
    | x when x%5=0 -> printfn "Buzz"
    | x -> printfn "%d" x) 
Run Code Online (Sandbox Code Playgroud)

当我使用我测试它[|1..15|] |> Array.map fizzBuzzer.Check得到预期的输出:

1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz …
Run Code Online (Sandbox Code Playgroud)

f#

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