datacharmer/test_db là một trong những repo mã nguồn mở mà TopGit theo dõi, hiện có 4.4k sao, viết chủ yếu bằng PLpgSQL. A sample MySQL database with an integrated test suite, used to test your applications and database servers
Tóm tắt dựng từ metadata GitHub của chính dự án — chưa có bài review TopGit. Trang sẽ tự động cập nhật khi bài review đầy đủ được xuất bản.
VÌ SAO CHƯA CÓ REVIEW
TopGit viết bài đầy đủ cho repo có nhiều sao nhất và được yêu cầu nhiều nhất. Trang này là snapshot trong thời gian chờ — xem README gốc ở tab READ ME.
A sample database with an integrated test suite, used to test your applications and database servers
This repository was migrated from Launchpad.
See usage in the MySQL docs
Tested Versions
The database requires MySQL 5.0+ or PostgreSQL 12+. The following versions are tested in CI
using ProxySQL/dbdeployer on a weekly schedule:
Vendor
Versions
MySQL
5.6, 5.7, 8.0, 8.4, 9.0, 9.2, 9.5, 9.6
Percona Server
8.0, 8.4
MariaDB
10.11, 11.4, 12.1
PostgreSQL
16, 17
MySQL 9.x Notes
Starting with MySQL 9.5, the SOURCE command requires the --commands flag on the client:
mysql --commands < employees.sql
Starting with MySQL 9.6, the MD5() and SHA() functions have been removed from the server.
The integrity test files test_employees_md5.sql and test_employees_sha.sql will not work on 9.6+.
Use test_employees_sha2.sql instead, which uses SHA2(..., 256) and is compatible with all versions:
mysql -t < test_employees_sha2.sql
The SHA-256 checksums are identical across all supported MySQL, Percona, MariaDB, and PostgreSQL versions.
Tested Versions
The database requires MySQL 5.0+ or compatible server. The following versions are tested in CI
using ProxySQL/dbdeployer on a weekly schedule:
Vendor
Versions
MySQL
5.6, 5.7, 8.0, 8.4, 9.0, 9.2, 9.5, 9.6
Percona Server
8.0, 8.4
MariaDB
10.11, 11.4, 12.1
MySQL 9.x Notes
Starting with MySQL 9.5, the SOURCE command requires the --commands flag on the client:
mysql --commands < employees.sql
Starting with MySQL 9.6, the MD5() and SHA() functions have been removed from the server.
The integrity test files test_employees_md5.sql and test_employees_sha.sql will not work on 9.6+.
Use test_employees_sha2.sql instead, which uses SHA2(..., 256) and is compatible with all versions:
mysql -t < test_employees_sha2.sql
The SHA-256 checksums are identical across all supported MySQL, Percona, and MariaDB versions.
Where it comes from
The original data was created by Fusheng Wang and Carlo Zaniolo at
Siemens Corporate Research. The data is in XML format.
http://timecenter.cs.aau.dk/software.htm
Giuseppe Maxia made the relational schema and Patrick Crews exported
the data in relational format.
The database contains about 300,000 employee records with 2.8 million
salary entries. The export data is 167 MB, which is not huge, but
heavy enough to be non-trivial for testing.
The data was generated, and as such there are inconsistencies and subtle
problems. Rather than removing them, we decided to leave the contents
untouched, and use these issues as data cleaning exercises.
Prerequisites
You need a MySQL database server (5.0+) and run the commands below through a
user that has the following privileges:
[!IMPORTANT]
If you are using MySQL client >= 9.x, the new default value of the --commands parameter is set to FALSE. Therefore, the SOURCE command won't work. You need to happen --commands to each mysql command line call.
Then run
mysql < employees.sql
If you want to install with two large partitioned tables, run
mysql < employees_partitioned.sql
Testing the installation
After installing, you can run one of the following integrity tests:
mysql -t < test_employees_sha2.sql # SHA-256 (works on all versions including 9.6+)
mysql -t < test_employees_md5.sql # MD5 (MySQL 8.0–9.5 only)
mysql -t < test_employees_sha.sql # SHA-1 (MySQL 8.0–9.5 only)
The database is also available for PostgreSQL 12+. The schema and data are identical
to the MySQL version. All files are in the postgresql/ directory.
Differences from the MySQL version
ENUM type: MySQL ENUM('M','F') is replaced with CHAR(1) CHECK (gender IN ('M','F'))
Stored procedures: MySQL's delimiter // syntax is replaced with PostgreSQL dollar-quoting ($...$ LANGUAGE plpgsql)
show_departments(): Implemented as a function returning TABLE (use SELECT * FROM show_departments(); instead of CALL show_departments();)
User variables: MySQL's @var := value pattern is replaced with PL/pgSQL local variables
Integrity tests: Use the same incremental hashing approach but via PL/pgSQL helper functions instead of MySQL user variables
Data integrity across databases
The SHA-256 checksums are identical between MySQL and PostgreSQL. This is verified in CI:
the same expected values in test_employees_sha2.sql and postgresql/test_employees_sha2.sql
produce matching results on both databases. The MySQL version uses SHA2(..., 256) while
PostgreSQL uses encode(digest(..., 'sha256'), 'hex') from the pgcrypto extension.
Installation
Download the repository
Install PostgreSQL (12+)
Run the loading script:
cd postgresql
bash load_employees_db.sh
To use a custom psql command (e.g., from a dbdeployer sandbox):
Available functions: emp_name(), emp_dept_name(), emp_dept_id(), current_manager(),
show_departments() (use SELECT * FROM show_departments();), employees_help().
DISCLAIMER
To the best of my knowledge, this data is fabricated and
it does not correspond to real people.
Any similarity to existing people is purely coincidental.
LICENSE
This work is licensed under the
Creative Commons Attribution-Share Alike 3.0 Unported License.
To view a copy of this license, visit
http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to
Creative Commons, 171 Second Street, Suite 300, San Francisco,
California, 94105, USA.
datacharmer/test_db có 4.4k sao GitHub — tải lại trang để xem số mới nhất, hoặc xem trực tiếp github.com/datacharmer/test_db. TopGit phản chiếu số sao của GitHub nhưng không cam kết đến từng phút.
datacharmer/test_db có phải mã nguồn mở không?
TopGit chưa ghi nhận license cho datacharmer/test_db. Phần lớn repo public trên GitHub là mã nguồn mở, nhưng điều khoản khác nhau từng repo — mở file LICENSE để xác nhận.
datacharmer/test_db còn đang phát triển không?
Commit gần nhất trên datacharmer/test_db là 4 tháng trước (theo timestamp GitHub). Repo có 2.7k fork — một chỉ báo về mức độ quan tâm của cộng đồng.
datacharmer/test_db là gì?
datacharmer/test_db (datacharmer/test_db) là dự án PLpgSQL trên GitHub. Theo mô tả gốc: A sample MySQL database with an integrated test suite, used to test your applications and database servers
Đọc thêm về datacharmer/test_db ở đâu?
Trang TopGit này là một snapshot — tab "Readme" hiển thị nguyên văn README của repo (đã bỏ link, giữ ảnh). Repo GitHub ở github.com/datacharmer/test_db là nguồn chính thức.
Đọc đầy đủ README ở tab phía trên.
Vẫn đang phân vân về test_db?
Một cú bấm sẽ gửi câu hỏi kèm trang này cho AI — xem AI nói gì về test_db.