/// <summary> /// Create a database /// </summary> /// <param name="dbInfo">DbDriverInfo</param> public void CreatePhysicalDatabase(DbDriverInfo dbInfo) { MongoDBConnectionStringBuilder masterBuilder = new MongoDBConnectionStringBuilder(dbInfo.DBCnnStringBuilder.ToString()); MongoDBConnectionStringBuilder tempBuilder = new MongoDBConnectionStringBuilder(dbInfo.DBCnnStringBuilder.ToString()); //tempBuilder = dbInfo.DBCnnStringBuilder as MongoDBConnectionStringBuilder; //The "test" database is installed by default with MongoDB. System needs to login to this database to create a new database. tempBuilder.Database = "information_schema"; MongoDBConnection masterConnection = new MongoDBConnection(tempBuilder.ToString()); try { MongoDBCommand command = masterConnection.CreateCommand() as MongoDBCommand; if (dbInfo.DBName != null) { command.CommandText = "create database " + dbInfo.DBName + ";"; } masterConnection.Open(); //Logger.Log(command.CommandText); command.ExecuteNonQuery(); //reset database to new database for correct storage of meta tables tempBuilder.Database = dbInfo.DBName; } catch (Exception ex) { throw new System.ApplicationException("Could not create new MongoDB Database", ex);//(Epi.SharedStrings.CAN_NOT_CREATE_NEW_MYSQL, ex); } finally { masterConnection.Close(); } }
/// <summary> /// Create a database with a name that has already been established /// </summary> /// <param name="configDatabaseKey">Name of the database</param> /// <returns>IDbDriver instance</returns> public IDbDriver CreateDatabaseObjectByConfiguredName(string configDatabaseKey) { //may not use since PHIN is .MDB IDbDriver instance = null; Configuration config = Configuration.GetNewInstance(); DataRow[] result = config.DatabaseConnections.Select("Name='" + configDatabaseKey + "'"); if (result.Length == 1) { Epi.DataSets.Config.DatabaseRow dbConnection = (Epi.DataSets.Config.DatabaseRow)result[0]; MongoDBConnectionStringBuilder MongoDBConnectionBuilder = new MongoDBConnectionStringBuilder(dbConnection.ConnectionString); instance = CreateDatabaseObject(MongoDBConnectionBuilder); } else { throw new GeneralException("Database name is not configured."); } return(instance); }
public MongoDBConnection(MongoDBConnectionStringBuilder settings, string rtk) { }