safeLoad(); $dsn = sprintf( 'mysql:host=%s;port=%s;dbname=%s;charset=%s', $_ENV['DB_HOST'] ?? '127.0.0.1', $_ENV['DB_PORT'] ?? '3306', $_ENV['DB_DATABASE'] ?? '', $_ENV['DB_CHARSET'] ?? 'utf8mb4' ); $pdo = new PDO( $dsn, $_ENV['DB_USERNAME'] ?? '', $_ENV['DB_PASSWORD'] ?? '', [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, ] ); $pdo->exec(<<<'SQL' CREATE TABLE IF NOT EXISTS order_shipping_targets ( id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT, order_id BIGINT UNSIGNED NOT NULL, warehouse_id BIGINT UNSIGNED NULL DEFAULT NULL, warehouse_name VARCHAR(128) NOT NULL DEFAULT '', warehouse_code VARCHAR(64) NOT NULL DEFAULT '', service_provider VARCHAR(32) NOT NULL DEFAULT 'anxinyan', receiver_name VARCHAR(64) NOT NULL DEFAULT '', receiver_mobile VARCHAR(32) NOT NULL DEFAULT '', province VARCHAR(64) NOT NULL DEFAULT '', city VARCHAR(64) NOT NULL DEFAULT '', district VARCHAR(64) NOT NULL DEFAULT '', detail_address VARCHAR(255) NOT NULL DEFAULT '', service_time VARCHAR(128) NOT NULL DEFAULT '', notice VARCHAR(500) NOT NULL DEFAULT '', created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (id), UNIQUE KEY uk_order_shipping_targets_order_id (order_id), KEY idx_order_shipping_targets_warehouse_id (warehouse_id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='订单锁定仓库快照' SQL); echo "SCHEMA_UPGRADE_OK\n";