데이터베이스 시드
Database seeding데이터베이스 시드는 초기 데이터 집합으로 데이터베이스를 채우는 것입니다.애플리케이션의 초기 셋업시에, 초기 유저 어카운트나 더미 데이터등의 시드 데이터를 로드하는 것이 일반적입니다.
엔티티 프레임워크
\이행\Configuration.cs
일반의 학급 응용 프로그램 데이터베이스이니셜라이저 : Drop Create Database If Model Changes< >DbContext> { 보호되고 있다 덮어쓰다 무효 시드(DbContext 맥락) { 변화하다 사용자 관리자 = 신규 사용자 관리자< >응용 프로그램 사용자>(신규 사용자 스토어< >응용 프로그램 사용자>(맥락)); 변화하다 롤 매니저 = 신규 롤 매니저< >아이덴티티 롤>(신규 롤스토어< >아이덴티티 롤>(맥락)); 변화하다 사용자 이름 = 앨리스; 변화하다 패스워드 = "password123"; 변화하다 역할. = "관리자"; // 관리자 역할이 없는 경우 생성 한다면 (!롤 매니저.롤 엑시스트(역할.)) { 롤 매니저.만들다(신규 아이덴티티 롤(역할.)); } // 사용자 Alice 만들기 변화하다 유저 = 신규 응용 프로그램 사용자() { 사용자 이름 = 사용자 이름; }; 변화하다 결과 = 사용자 관리자.만들다(유저, 패스워드); // 관리자 역할에 사용자 관리자 추가 한다면 (결과.성공했다) { 변화하다 결과 = 사용자 관리자.역할 추가(유저.아이디, 역할.); } } } 엔티티 프레임워크 코어
일반의 학급 데이터 시드 컨텍스트 : DbContext { 일반의 DbSet< >블로그> 블로그 { 얻다; 세트; } 일반의 DbSet< >포스트.> 투고 { 얻다; 세트; } 보호되고 있다 덮어쓰다 무효 온설정(DbContext Options Builder 옵션빌더) => 옵션빌더 .UseSqlServer(@"Server=(localdb)\mssqllocaldb;Database=EFData 시드Trusted_Connection=진짜"); 보호되고 있다 덮어쓰다 무효 OnModel 작성(모델빌더 모델빌더) { 모델빌더.독립체< >블로그>(독립체 => { 독립체.소유물(e => e.URL).필수(); }); #지역 블로그 시드 모델빌더.독립체< >블로그> ( ) 。하스 데이터(신규 블로그 { 블로그 아이디 = 1, URL = "http://sample.com" }); #엔드리젼 모델빌더.독립체< >포스트.>( 독립체 => { 독립체.하스원(d => d.블로그) .다수(p => p.투고) .HasForeignKey(외부 키)("BlogId"); }); #지역 포스트 시드 모델빌더.독립체< >포스트.> ( ) 。하스 데이터( 신규 포스트. { 블로그 아이디 = 1, PostId(Post Id) = 1, 제목 = "첫 번째 투고", 내용 = "테스트 1" }); #엔드리젼 #지역 Anonymous Post Seed 모델빌더.독립체< >포스트.> ( ) 。하스 데이터( 신규 { 블로그 아이디 = 1, PostId(Post Id) = 2, 제목 = "두 번째 투고", 내용 = "테스트 2" }); #엔드리젼 #지역소유타입시드 모델빌더.독립체< >포스트.> ( ) 。오너즈원(p => p.작성자명).하스 데이터( 신규 { PostId(Post Id) = 1, 첫번째 = '안드리', 지난 = '스비리드" }, 신규 { PostId(Post Id) = 2, 첫번째 = '디에고', 지난 = '베가 }); #엔드리젼 } } Symfony PHP 프레임워크
AppBundle/DataFipluces/ORM/customer.yml (hautelook/AliceBundle 버전1과 동일)
AppBundle\엔티티\사용자: customer_{1..10}: 사용자 이름: <timeout()> 이메일: <safe Email()> 플레인 패스워드: 레터a 역할: [역할_SUPER_ADM입력] 가능한: 진실의 Laravel PHP 프레임워크
app/syslog/syslog/users.php
학급 데이터베이스씨더 확장 씨더 { 일반의 기능. 달려.() { $ this->불러('UserTableSeeder'); $ this->명령어->정보('사용자 테이블 시드!'); } } 학급 UserTableSeeder(사용자 테이블시더) 확장 씨더 { 일반의 기능. 달려.() { DB::테이블('사용자')->삭제하다(); 사용자::만들다(배열('이메일' => 'foo@bar.com')); } }