Sql server 为Azure数据库创建文件DSN

Sql server 为Azure数据库创建文件DSN,sql-server,azure,odbc,azure-sql-database,Sql Server,Azure,Odbc,Azure Sql Database,我想将Access窗体与Azure SQL Server数据库连接。为了做到这一点,我必须创建新的文件DSN(因为我希望此数据源用于所有机器,而不仅仅是我的机器) 当我试图通过管理工具执行此操作时,我甚至无法使用我的SQL凭据连接到Azure上的SQL Server。我得到这个错误: Connection failed: SQLState: '28000' SQL Server Error: 18456 [Microsoft][SQL Server Native Client 11.0][SQL

我想将Access窗体与Azure SQL Server数据库连接。为了做到这一点,我必须创建新的
文件DSN
(因为我希望此数据源用于所有机器,而不仅仅是我的机器)

当我试图通过管理工具执行此操作时,我甚至无法使用我的SQL凭据连接到Azure上的SQL Server。我得到这个错误:

Connection failed:
SQLState: '28000'
SQL Server Error: 18456
[Microsoft][SQL Server Native Client 11.0][SQL Server]Login failed for user xxxx
凭据是正确的,因为:

  • 我能够使用具有相同凭据的SSM连接到数据库
  • 当我尝试对
    用户
    系统
    DSN执行相同操作时,没有出现错误。但我不想这样,因为我想与所有机器共享数据源

  • 有什么想法吗?

    我在测试中重现了这一点:

    假设您拥有服务器名为DBSERVERDBSERVER.database.windows.net的Azure数据库,为了设置文件DSN,您必须使用以下格式指定登录名:

    LOGIN@DBSERVER
    
    这应该可以解决这个问题

    问候,, 林

    编辑:

    我正在复制这个。无论如何,解决方法是手动创建一个包含以下内容的txt文件,并将文件扩展名更改为.dsn

    [ODBC]
    DRIVER=SQL Server Native Client 11.0
    UID=USERNAME@DBSERVER
    Encrypt=yes
    DATABASE=DBNAME
    WSID=HOSTNAME
    APP=Microsoft® Windows® Operating System
    SERVER=tcp:DBSERVER.database.windows.net,1433
    

    通常SQL Server Native会在文件DSN中产生问题。我希望下面提到的查询将工作,因为它是为我工作的罚款

    [ODBC]
    DRIVER=SQL Server
    UID=nazim.virani
    DATABASE=DBNAME
    WSID=HOSTNAME
    APP=Microsoft® Windows® Operating System
    SERVER=INSTANCE
    

    你能粘贴全部错误吗?这就是所有的错误信息。即使这样,我也会得到同样的错误。正如我所说的,只有当我尝试文件DSN时才会发生这种情况,当我尝试其他DSN(用户或系统)时,它工作正常。是的,文件DSN向导仅在相应的登录映射到主数据库时工作,即使指定了默认数据库。