可能很简单,但对我来说却是新事物。我找不到可以帮助您解决此问题的帖子,因此我希望自己在不知不觉中做一些愚蠢的事情。
我有一个在Mac上的Docker中运行的SQL Server数据库,并且可以轻松登录到“ sa”帐户。
我为应用程序连接到同一数据库设置了另一个ID。
CREATE LOGIN tisApp WITH PASSWORD='pa$Sw0rd'
SELECT * FROM sys.sql_logins WHERE name = 'tisApp'
但是,当我尝试连接到它时,就像这样...
mssql -u tisApp -p pa$Sw0rd
我收到一个错误...
My-iMac:~ my$ mssql -u tisApp -p pa$Sw0rd
Connecting to localhost...
Error: Login failed for user 'tisApp'.
My-iMac:~ my$
MS文档指出以这种方式创建的ID应该可以连接,但是...我不能。
当我检查日志时,它们显示:
用户“ tisApp”的登录失败。原因:密码与提供的登录名不匹配。 [客户:172.17.0.1]
答案 0 :(得分:0)
万一这对任何人都有帮助,经过一个小实验,这是非常简单的答案。由于某些原因,SQL Server无法通过mssql接受特殊字符。因此,我将命令更新如下,现在一切正常。
当然,这不是一个很好的密码,但目前可以正常使用。
SQL Server:
def recursive_binary_search(arr, target, min_index=0, max_index=arr.size-1)
mid_index = (min_index+max_index)/2
case arr[mid_index] <=> target
when 0 # arr[mid_index] == target
mid_index
when -1 # arr[mid_index] < target
min_index = mid_index + 1
recursive_binary_search(arr, target, min_index, max_index)
when 1 # arr[mid_index] > target
max_index = mid_index - 1
recursive_binary_search(arr, target, min_index, max_index)
end
end
arr = [1,2,3,4,5,6]
arr.each { |target| puts "#{target}: #{recursive_binary_search(arr, target)}" }
1: 0
2: 1
3: 2
4: 3
5: 4
6: 5
命令行:
CREATE LOGIN tisApp WITH PASSWORD='pasSw0rd'
SELECT * FROM sys.sql_logins WHERE name = 'tisApp'
现在,我明白了...
mssql -u tisApp -p pa$Sw0rd