예제 #1
0
 public bool DatabaseExists()
 {
     var dbManager = new DatabaseManager(NHUnitOfWorkFactory._dbProvider, NHUnitOfWorkFactory.connectionString);
     return dbManager.DatabaseExists();
 }
예제 #2
0
        public void DeleteDatabase()
        {
            var dbManager = new DatabaseManager(NHUnitOfWorkFactory._dbProvider, NHUnitOfWorkFactory.connectionString);

            if (dbManager.DatabaseExists())
            {
                dbManager.DropDatabase();
            }
        }
예제 #3
0
        public void CreateDatabase()
        {
            var dbManager = new DatabaseManager(NHUnitOfWorkFactory._dbProvider, NHUnitOfWorkFactory.connectionString);

            if (!dbManager.DatabaseExists())
            {
                dbManager.CreateDatabase();
                new SchemaExport(NHUnitOfWorkFactory.builtConfiguration).Create(false, true);

                if (_dbProvider == DbProvider.MsSqlProvider)
                {
                    using (var conn = new SqlConnection(NHUnitOfWorkFactory.connectionString))
                    {
                        conn.Open();
                        using (SqlCommand cmd = conn.CreateCommand())
                        {
                            cmd.CommandText = "RENAME_UNIQUE_KEYS";
                            cmd.CommandType = CommandType.StoredProcedure;
                            cmd.ExecuteNonQuery();
                        }
                    }
                }
            }
        }