protected override void Initialize() { OleDbDatabase database = new OleDbDatabase(); OleDbConnectionStringResolver conn = new OleDbConnectionStringResolver(Provider, DataSource); database.ConnectionStringResolver = conn; Database = database; }
/// <summary> /// 创建一个数据提供程序实例 /// </summary> /// <param name="connectionStringName"></param> /// <returns></returns> public static Database Create(string providerName, string connectionString) { DbProviderFactory providerFactory = null; Database db = null; switch (providerName) { case "System.Data.Odbc": db = new OdbcDatabase(connectionString); break; case "System.Data.OleDb": db = new OleDbDatabase(connectionString); break; case "System.Data.OracleClient": db = new OracleDatabase(connectionString); break; case "Oracle.ManagedDataAccess.Client": db = new OracleDatabase(connectionString); break; case "Devart.Data.Oracle": //http://evget.com/zh-CN/product/954/feature.aspx http://www.devart.com/ case "DDTek.Oracle": //http://www.datadirect.com/index.html 由于删除了版权DLL,导致该功能可能无法使用。可在QQ群:122161138中下载source_lib.zip providerFactory = DbProviderFactories.GetFactory(providerName); db = new OracleDatabase(connectionString, providerFactory); break; case "System.Data.SQLite": providerFactory = DbProviderFactories.GetFactory(providerName); db = new SQLiteDatabase(connectionString, providerFactory); break; case "MySql.Data.MySqlClient": providerFactory = DbProviderFactories.GetFactory(providerName); db = new MySqlDatabase(connectionString, providerFactory); break; case "IBM.Data.DB2": providerFactory = DbProviderFactories.GetFactory(providerName); db = new DB2Database(connectionString, providerFactory); break; case "FirebirdSql.Data.FirebirdClient": providerFactory = DbProviderFactories.GetFactory(providerName); db = new FirebirdDatabase(connectionString, providerFactory); break; default: break; } return(db); }
public static HashSet <Database> Setup(Action <Database> initializer = null, string databaseName = "DaoRef") { if (initializer == null) { initializer = db => Db.TryEnsureSchema <TestTable>(db); } HashSet <Database> testDatabases = new HashSet <Database>(); MsSqlDatabase msDatabase = new MsSqlDatabase("chumsql2", databaseName, new MsSqlCredentials { UserName = "******", Password = "******" }); initializer(msDatabase); testDatabases.Add(msDatabase); SQLiteDatabase sqliteDatabase = new SQLiteDatabase(".\\Chumsql2", databaseName); initializer(sqliteDatabase); testDatabases.Add(sqliteDatabase); OleDbDatabase oleDatabase = new OleDbDatabase("Microsoft.ACE.OLEDB.12.0", databaseName.RandomLetters(4)); initializer(oleDatabase); testDatabases.Add(oleDatabase); OracleDatabase oracleDatabase = new OracleDatabase("chumsql2", databaseName, new OracleCredentials { UserId = "C##ORACLEUSER", Password = "******" }); initializer(oracleDatabase); testDatabases.Add(oracleDatabase); MySqlDatabase mySqlDatabase = new MySqlDatabase("chumsql2", databaseName, new MySqlCredentials { UserId = "mysql", Password = "******" }); initializer(mySqlDatabase); testDatabases.Add(mySqlDatabase); NpgsqlDatabase npgsqlDatabase = new NpgsqlDatabase("chumsql2", databaseName, new NpgsqlCredentials { UserId = "postgres", Password = "******" }); initializer(npgsqlDatabase); testDatabases.Add(npgsqlDatabase); return(testDatabases); }
/// <summary> /// 创建一个数据提供程序实例 /// </summary> /// <param name="connectionStringName"></param> /// <returns></returns> public static Database Create(string connectionStringName) { CheckUtil.ArgumentNotNullOrEmpty(connectionStringName, "connectionStringName"); ConnectionStringSettings css = ConfigurationManager.ConnectionStrings[connectionStringName]; if (css == null) { throw new Exception(string.Format(Resources.Data.ConnectionStringNameNotFound, connectionStringName)); } string connectionString = css.ConnectionString; string providerName = css.ProviderName; Database db = new SqlServerDatabase(connectionString); DbProviderFactory providerFactory = null; if (string.IsNullOrEmpty(providerName)) { return(db); } //if (css.ProviderName == "System.Data.OleDb") //{ // providerFactory = OleDbFactory.Instance; //} //else //{ // providerFactory = DbProviderFactories.GetFactory(css.ProviderName); //} //if (providerFactory == null) throw new Exception(string.Format(Resources.Data.DataProviderNotFound, css.ProviderName)); switch (providerName) { //case "System.Data.SqlClient": // break; case "System.Data.Odbc": db = new OdbcDatabase(connectionString); break; case "System.Data.OleDb": db = new OleDbDatabase(connectionString); break; case "System.Data.OracleClient": db = new OracleDatabase(connectionString); break; case "Oracle.ManagedDataAccess.Client": db = new OracleDatabase(connectionString); break; case "Devart.Data.Oracle": //http://evget.com/zh-CN/product/954/feature.aspx http://www.devart.com/ case "DDTek.Oracle": //http://www.datadirect.com/index.html providerFactory = DbProviderFactories.GetFactory(providerName); db = new OracleDatabase(connectionString, providerFactory); break; case "System.Data.SQLite": providerFactory = DbProviderFactories.GetFactory(providerName); db = new SQLiteDatabase(connectionString, providerFactory); break; case "MySql.Data.MySqlClient": providerFactory = DbProviderFactories.GetFactory(providerName); db = new MySqlDatabase(connectionString, providerFactory); break; case "IBM.Data.DB2": providerFactory = DbProviderFactories.GetFactory(providerName); db = new DB2Database(connectionString, providerFactory); break; case "FirebirdSql.Data.FirebirdClient": providerFactory = DbProviderFactories.GetFactory(providerName); db = new FirebirdDatabase(connectionString, providerFactory); break; default: break; } return(db); }
/// <summary> /// 创建一个数据提供程序实例 /// </summary> /// <param name="connectionStringName"></param> /// <returns></returns> public static Database Create(string connectionStringName) { CheckUtil.ArgumentNotNullOrEmpty(connectionStringName, "connectionStringName"); DbConnConfigDAL dal = new DbConnConfigDAL(); var model = dal.FindOne(connectionStringName); if (model == null) { throw new Exception(string.Format(Resources.Data.ConnectionStringNameNotFound, connectionStringName)); } string connectionString = model.ConnectionString; string providerName = model.ProviderName; Database db = new SqlServerDatabase(connectionString); DbProviderFactory providerFactory = null; if (string.IsNullOrEmpty(providerName)) { return(db); } //if (css.ProviderName == "System.Data.OleDb") //{ // providerFactory = OleDbFactory.Instance; //} //else //{ // providerFactory = DbProviderFactories.GetFactory(css.ProviderName); //} //if (providerFactory == null) throw new Exception(string.Format(Resources.Data.DataProviderNotFound, css.ProviderName)); switch (providerName) { //case "System.Data.SqlClient": // break; case "System.Data.Odbc": db = new OdbcDatabase(connectionString); break; case "System.Data.OleDb": db = new OleDbDatabase(connectionString); break; case "System.Data.SQLite": providerFactory = DbProviderFactories.GetFactory(providerName); db = new SQLiteDatabase(connectionString, providerFactory); break; case "MySql.Data.MySqlClient": providerFactory = DbProviderFactories.GetFactory(providerName); db = new MySqlDatabase(connectionString, providerFactory); break; case "IBM.Data.DB2": providerFactory = DbProviderFactories.GetFactory(providerName); db = new DB2Database(connectionString, providerFactory); break; case "FirebirdSql.Data.FirebirdClient": providerFactory = DbProviderFactories.GetFactory(providerName); db = new FirebirdDatabase(connectionString, providerFactory); break; default: break; } return(db); }
/// <summary> /// 创建一个数据提供程序实例 /// </summary> /// <param name="connectionStringName"></param> /// <returns></returns> public static Database Create(string connectionStringName) { CheckUtil.ArgumentNotNullOrEmpty(connectionStringName, "connectionStringName"); ConnectionStringSettings css = ConfigurationManager.ConnectionStrings[connectionStringName]; if (css == null) { throw new Exception(string.Format(Resources.Data.ConnectionStringNameNotFound, connectionStringName)); } string connectionString = css.ConnectionString; string providerName = css.ProviderName; Database db = new SqlServerDatabase(connectionString); DbProviderFactory providerFactory = null; if (string.IsNullOrEmpty(providerName)) { return(db); } providerFactory = DbProviderFactories.GetFactory(css.ProviderName); if (providerFactory == null) { throw new Exception(string.Format(Resources.Data.DataProviderNotFound, css.ProviderName)); } switch (providerName) { //case "System.Data.SqlClient": // break; case "System.Data.Odbc": db = new OdbcDatabase(connectionString); break; case "System.Data.OleDb": db = new OleDbDatabase(connectionString); break; case "System.Data.OracleClient": db = new OracleDatabase(connectionString); break; case "System.Data.SQLite": db = new SQLiteDatabase(connectionString, providerFactory); break; case "MySql.Data.MySqlClient": db = new MySqlDatabase(connectionString, providerFactory); break; case "IBM.Data.DB2": db = new DB2Database(connectionString, providerFactory); break; case "FirebirdSql.Data.FirebirdClient": db = new FirebirdDatabase(connectionString, providerFactory); break; default: break; } return(db); }