【解決方法】キーワードはサポートされていません:「ユーザー 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 サーバー認証:

VB.NET
<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をコピーしました