我正在尝试使用 sys.sysusers
连接到 SQL Azure 数据库与 name
等于 "myname@mydoman"
。问题是当尝试使用连接字符串时
Data Source=tcp:coolsqldb.database.windows.net,1433;Initial Catalog=Cool;Persist Security Info=False;User <a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="7d3439401004131c10183d10041912101c13531e1210" rel="noreferrer noopener nofollow">[email protected]</a>;...
我得到了异常
Cannot open server "mydomain.com" requested by the login. The login failed.
at System.Data.SqlClient.SqlIn....
我尝试在 <a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="d29b96efbfabbcb3bfb792bfabb6bdbfb3bcfcb1bdbf" rel="noreferrer noopener nofollow">[email protected]</a>
中使用引号所以它是 ID='<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="6a0713040b070f2a07130e05070b0444090507" rel="noreferrer noopener nofollow">[email protected]</a>'
,但没有运气。知道我能做什么吗?
最佳答案
如果您在 Azure Active Directory 上创建这些身份,则可以将它们创建为 Azure SQL 数据库的用户。
CREATE USER [<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="f5988c9b949890b5988c919a98949bdb969a98" rel="noreferrer noopener nofollow">[email protected]</a>] FROM EXTERNAL PROVIDER;
您的字符串连接将必须更改,如下所示:
string ConnectionString =
@"Data Source=n9lxnyuzhv.database.windows.net; Authentication=Active Directory Password; Initial Catalog=testdb; <a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="b7e2fef38adaced9d6dad2f7daced3d8dad6d999d4d8da" rel="noreferrer noopener nofollow">[email protected]</a>; PWD=MyPassWord!";
SqlConnection conn = new SqlConnection(ConnectionString);
conn.Open();
了解更多信息,请访问this以下文档。
关于sql - 如何将用户 ID(即电子邮件地址)放入连接字符串中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49502445/