Seed Data là gì?
Seed data là tập hợp các cậu lệnh sql hoặc đoạn code để đưa dữ liệu ban đầu vào CSDL.
Mục đích
-
Khởi tạo hệ thống với dữ liệu mặc định.
-
Tạo dữ liệu test nhanh chóng.
-
Hỗ trợ kiểm thử tự động (unit test, integration test).
-
Tạo môi trường demo cho khách hàng.
Cấu trúc file
-- +goose Up
INSERT INTO users (name, email)
VALUES
('Admin', '[email protected]'),
('Test User', '[email protected]');
-- +goose Down
DELETE FROM users
WHERE email IN ('[email protected]', '[email protected]');
-
Up: thêm dữ liệu mẫu. -
Down: xóa dữ liệu mẫu.
Sự khác biệt giữa Migration và Seed Data
| Tiêu chí | Migration | Seed Data |
|---|---|---|
| Mục đích | Thay đổi cấu trúc DB | Thêm dữ liệu mẫu/mặc định |
| Tác động | Schema | Data |
| Rollback | Xóa/đổi cấu trúc | Xóa dữ liệu |
| Thời điểm chạy | Khi thay đổi cấu trúc | Khi cần dữ liệu ban đầu |
| Ví dụ | CREATE TABLE users |
INSERT INTO users (...) VALUES (...) |







Khoá học lập trình game con rắn cho trẻ em


