sql >> Database teknologi >  >> RDS >> Sqlserver

Databaseimplementeringsstrategier (SQL-server)

Til netop dette problem valgte jeg at bruge et migreringsværktøj:Migratordotnet .

Med migreringer (i ethvert værktøj) har du en simpel klasse, der bruges til at udføre dine ændringer og fortryde dem. Her er et eksempel:

[Migration(62)]
public class _62_add_date_created_column : Migration
{
    public void Up()
    {
       //add it nullable
       Database.AddColumn("Customers", new Column("DateCreated", DateTime) );

       //seed it with data
       Database.Execute("update Customers set DateCreated = getdate()");

       //add not-null constraint
       Database.AddNotNullConstraint("Customers", "DateCreated");
    }

    public void Down()
    {
       Database.RemoveColumn("Customers", "DateCreated");
    }
}

Dette eksempel viser, hvordan du kan håndtere flygtige opdateringer, som f.eks. at tilføje en ny ikke-nul kolonne til en tabel, der har eksisterende data. Dette kan nemt automatiseres, og du kan nemt gå op og ned mellem versioner.

Dette har været en virkelig værdifuld tilføjelse til vores build og har strømlinet processen uhyre .

Jeg postede en sammenligning af de forskellige migrationsrammer i .NET her:http ://benscheirman.com/2008/06/net-database-migration-tool-roundup



  1. Ydelsestest ved hjælp af MySQLdump og MySQL Shell Utility

  2. Postgres:\copy syntaksfejl i .sql-fil

  3. Hvordan konfigureres Spring boot til arbejde med to databaser?

  4. Hvordan vælger du fra mysql, hvor sidste tegn i en streng =x?