irap /( table-creator
创建或编辑MySQL表的包。
2.0.0
2024-02-28 08:35 UTC
Requires
- php: >=8.1.0
- ext-mysqli: *
Requires (Dev)
- irap/core-libs: 1.1.*
This package is auto-updated.
Last update: 2024-08-28 09:42:17 UTC
README
一个简化MySQL表管理的包。
示例用法
以下示例演示了如何使用此包轻松创建新的MySQL数据库表
use iRAP\TableCreator\DatabaseField; use iRAP\TableCreator\TableCreator; use iRAP\TableCreator\Testing\AbstractTest; function createTestTable(\mysqli $db) { $tableCreator = new TableCreator($db, "test_table"); $fields = array( DatabaseField::createInt('id', 11, true), DatabaseField::createBool('bool_field'), DatabaseField::createVarchar('varchar_field', 255), DatabaseField::createChar('char_field', 3), DatabaseField::createDate('date_field'), DatabaseField::createDecimal('decimal_field', 5, 4), DatabaseField::createGeometry('geometry_field'), DatabaseField::createGeometryCollection('geometry_collection_field'), DatabaseField::createLineString('line_string_field'), DatabaseField::createLongText('long_text_field'), DatabaseField::createMultiLineString('multi_line_string_field'), DatabaseField::createMultiPoint('multi_point_field'), DatabaseField::createMultiPolygon('multi_polygon_field'), DatabaseField::createPoint('point_field'), DatabaseField::createPolygon('polygon_field'), DatabaseField::createText('text_field'), DatabaseField::createTimestamp('timestamp_field') ); $tableCreator->addFields($fields); $tableCreator->setPrimaryKey('id'); $tableCreator->run(); }
测试
在测试时,您可能发现使用Docker Compose启动临时数据库进行测试更容易,如下所示
version: "3" services: db: image: mariadb:latest container_name: db ports: - "3306:3306" volumes: - temp-mysql-data:/var/lib/mysql environment: - MARIADB_ROOT_PASSWORD=thisIsTheTestingPa55w0rd - MARIADB_DATABASE=testing volumes: temp-mysql-data: driver: local
然后,只需从模板创建包含相关值的Settings.php文件,并使用php ./testing/main.php执行测试。