不支持关键字:“用户 ID”。

编程


我正在使用此连接字符串,但每当我尝试连接到数据库时,都会出现错误“不支持关键字:’用户 id’”。
这是我的连接字符串:

string connectionstring = @"user id=" + @txtServerUsername.Text + ";password=" + @txtServerPassword.Text + ";server=" + @txtServerName.Text + ";Trusted_Connection=yes;database=" + @txtDatabaseName.Text + ";connection timeout=30";

解决方案4

嗨佛罗里达州,
以下是在应用程序的 cofig 文件中创建连接字符串的标准方法。

Windows 身份验证:

XML
<connectionStrings>
  <add name="connString" connectionString="Data Source=SPICITY1140\SQLEXPRESS;Initial Catalog=SPI_RFID2016;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>

SQL Server 身份验证:

网络
<connectionstrings>
  <add name="connString" connectionstring="Data Source=MT000XBSQL107\INST2;Initial Catalog=SRA;Persist Security Info=True;User ID=SRA_SSIS;Password=password">
   providerName="System.Data.SqlClient" />
</add></connectionstrings>

在 C# 代码中:

C#
private string conStr = ConfigurationManager.ConnectionStrings["connString"].ConnectionString;

编程方式:

C#
private DbConnection CreateConnection(string connectionString)
{
    return new SqlConnection(connectionString);
}

private string CreateConnectionString(string server, string databaseName, string userName, string password)
{
    var builder = new SqlConnectionStringBuilder
    {
        DataSource = server, // server address
        InitialCatalog = databaseName, // database name
        IntegratedSecurity = false, // server auth(false)/win auth(true)
        MultipleActiveResultSets = false, // activate/deactivate MARS
        PersistSecurityInfo = true, // hide login credentials
        UserID = userName, // user name
        Password = password // password
    };
    return builder.ConnectionString;
}

如何使用:

C#
public void ConnectoToDbWithEf6()
{
    using(var connection = CreateConnection(CreateConnectionString("server", "db", "you", "password")
    {
        using(var context = new YourContext(connection, true))
        {
            foreach(var someEntity in context.SomeEntitySet)
            {
                Console.WriteLine(someEntity.ToString());
            }
        }
    }

}

谢谢,
普拉泰克

解决方案1

请参考这个 艾米帮助你[^]

解决方案3

XML
<connectionStrings>
  <add name="EmployeeContext" connectionString="Data Source=SQLEXPRESS;Initial Catalog=Sample;User ID=ID Password=PWD;" providerName="System.Data.SqlClient" />
</connectionStrings>
引用:

在与数据库建立连接时,我收到此错误(使用实体框架)。 在知道确切的问题后,我删除了用户 ID 之间的空格并从数据库中获取详细信息,只需删除用户 ID 之间的空格或在连接字符串中正确定义您的用户 ID 和密码

コメント

タイトルとURLをコピーしました