我实际上是尝试通过依赖于FreeTDS的模块pymssql
从Python连接到Azure上的MS SQL Server。我无法让它发挥作用。我找到了命令行工具tsql
,它可能用于测试FreeTDS连接。而且,我无法与tsql
联系。关于这一点,我有一个非常具体的问题。
如何指定哪个"数据库"在tsql工具中。如果我使用dbeaver,我必须指定数据库," ava-iot"。使用man tsql
并不告诉我如何指定另一个数据库。
当我尝试:
$ tsql -H uepbua32ii.database.windows.net -p 1433 -U Azure_SQL_Reader_Temporary -P XXXXXX
我明白了:
"The server principal "Azure_SQL_Reader_Temporary" is not able to access the database "master" under the current security context."
这告诉我,它专门尝试连接到名为master
的数据库。那么如何告诉它尝试数据库ava-iot
。
答案 0 :(得分:3)
发生这种情况的原因是您的用户Azure_SQL_Reader_Temporary
将默认数据库设置为master
。你也可以改变它。但是要使用tsql
参数回答有关如何使用-D
进行操作的问题。
tsql -H uepbua32ii.database.windows.net -p 1433 -D dbname -U Azure_SQL_Reader_Temporary -P XXXXXX
祝你好运!