Connection string - Keyword not supported: 'initial catalog'

后端 未结 6 1665
北荒
北荒 2020-12-03 10:47

I am using Webmatrix.data\'s Database entity to create a database connection, however it doesnt like my connection string. I am running it from MVC ASP.net.

Ive tri

相关标签:
6条回答
  • 2020-12-03 11:21

    I suggest:


    1. You can check your connection string format clearly especialy " and ". In my case this is:


    1. You may try generate db by EF again.
    0 讨论(0)
  • 2020-12-03 11:24

    I ran into the error in one of the IdentityServer quickstarts.

    Had to replace

    services.AddDbContext<ApplicationDbContext>(options =>
                    options.UseSqlite(Configuration.GetConnectionString("DefaultConnection")));
    

    With

    services.AddDbContext<ApplicationDbContext>(options =>
                    options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));
    

    Using

    Microsoft.EntityFrameworkCore.SqlServer
    

    Because obviously my DB was a Microsoft SQL Server and not SQLite.

    0 讨论(0)
  • 2020-12-03 11:25

    check here: Database.OpenConnectionString Method (String, String)

    try to specify the provider name as second parameter, from the MSDN example:

    var connectionString = "Data Source=.\\SQLExpress;Initial Catalog=SmallBakery;Integrated Security=True";
    
    var providerName = "System.Data.SqlClient";
    
    var db = Database.OpenConnectionString(connectionString, providerName);
    
    0 讨论(0)
  • 2020-12-03 11:30

    You can use the below code

    Config file :

       <connectionStrings>
       <add name="con" connectionString="Data Source=ServerName;Initial Catalog=master;Integrated Security=SSPI;" providerName="System.Data.SqlClient"></add>
      </connectionStrings>
    

    cshtmlfile :

    var db = Database.Open("con");
    
    var selecteddata = db.Query("select * from movie");
    
    0 讨论(0)
  • 2020-12-03 11:31

    ARRRRHHHHHH!!!!! This is the second time I've run into this, grrrh - wasted hours on it.

    Error:

    The server encountered an error processing the request. The exception message is 'Keyword not supported: 'initial catalog;MyDatabase;data source'.'. See server logs for more details. The exception stack trace is:

    Stacktrace:

    at System.Data.Common.DbConnectionOptions.ParseInternal(Hashtable parsetable, String connectionString, Boolean buildChain, Hashtable synonyms, Boolean firstKey) at System.Data.Common.DbConnectionOptions..ctor(String connectionString, Hashtable synonyms, Boolean useOdbcRules) at System.Data.SqlClient.SqlConnectionString..ctor(String connectionString) at System.Data.SqlClient.SqlConnectionFactory.CreateConnectionOptions(String connectionString, DbConnectionOptions previous) at System.Data.ProviderBase.DbConnectionFactory.GetConnectionPoolGroup(DbConnectionPoolKey key, DbConnectionPoolGroupOptions poolOptions, DbConnectionOptions& userConnectionOptions) at System.Data.SqlClient.SqlConnection.ConnectionString_Set(DbConnectionPoolKey key) at System.Data.SqlClient.SqlConnection.set_ConnectionString(String value) at System.Data.SqlClient.SqlConnection..ctor(String connectionString, SqlCredential credential)

    This was my faulty connection string:

    <add name="Production" connectionString="Password=Secret;Persist Security Info=True;User ID=MyUserID;Initial Catalog;MyDatabase;Data Source=aquickborwnfoxjumpedover.us-west-2.rds.amazonaws.com,1433" providerName="System.Data.SqlClient" />

    Looks good right? WRONG

    Eventually I spotted the semi-colon here:

    Initial Catalog;MyDatabase

    To correct it, I used an equal sign:

    Initial Catalog=MyDatabase

    The correct connection string:

    <add name="ConnString" connectionString="Password=Secret;Persist Security Info=True;User ID=MyUserID;Initial Catalog=MyDatabase;Data Source=aquickborwnfoxjumpedover.us-west-2.rds.amazonaws.com,1433" providerName="System.Data.SqlClient" />

    0 讨论(0)
  • 2020-12-03 11:34

    For me I was getting this error because I was using a templated solution. Unbeknownst to me the template only installed support for sqlite. I had to install Microsoft.EntityFrameworkCore.SqlServer and change the calls in my code from UseSqlite to UseSqlServer.

    0 讨论(0)
提交回复
热议问题