Lor*_*n H 33 azure-sql-database
我想更改登录的默认数据库,以支持可以访问SQL Azure但不允许轻松更改连接字符串的软件.看来SQL Azure默认使用master数据库.
我已经考虑过:
存储过程.我找不到执行此操作的存储过程(sp_defaultdb据我所知,在SQL Azure中未实现)
改变登录. ALTER LOGIN不允许DEFAULT_DATABASE选择.
SSMS.SSMS似乎不允许通过SQL Azure接口进行太多用户控制.
想法?
t_y*_*oya 10
连接字符串:
Server=tcp:[serverName].database.windows.net;Database=myDataBase;User ID=[LoginForDb]@[serverName];Password=myPassword;Trusted_Connection=False;Encrypt=True;
Run Code Online (Sandbox Code Playgroud)
在连接字符串中写入"数据库"属性时,可以更改连接默认数据库.
SSMS连接到数据库框,在conecct对话框中是选项 - > secont选项卡.
正如您已经发现的那样,SQL Azure中没有DEFAULT_DATABASE选项.因此,如果您无法更改通常指定数据库名称的应用程序的连接字符串,那么您将无法使用master.
但是......是否可以创建ODBC连接,并将应用程序配置为使用ODBC?使用ODBC将允许您指定默认数据库.
使用SSMS登录时,您可以轻松更改默认数据库.单击"登录"对话框上的"选项"按钮,然后单击"连接属性"选项卡.在"连接到数据库"框中,输入数据库的名称.
小智 6
就我而言,我设法通过直接在master数据库中创建登录名来做到这一点:
CREATE LOGIN newlogin WITH password='password'
GO
CREATE USER newlogin FOR LOGIN newlogin WITH DEFAULT_SCHEMA=[dbo]
GO
Run Code Online (Sandbox Code Playgroud)
然后,我在数据库中创建了一个我想要访问以下内容的用户:
CREATE USER newlogin FOR LOGIN newlogin WITH DEFAULT_SCHEMA=[dbo]
GO
Run Code Online (Sandbox Code Playgroud)
最后,将其添加到特定数据库的角色中以获得正确的权限:
Alter role db_owner add member newlogin
Run Code Online (Sandbox Code Playgroud)
希望这对您也有用。
到目前为止,SSMS 中最简单的方法是使用附加参数选项卡并提供初始目录,例如
| 归档时间: |
|
| 查看次数: |
26552 次 |
| 最近记录: |