Files
chat/backend/database/migrate_extra_config.php
T
2026-07-22 10:18:59 +08:00

38 lines
1.2 KiB
PHP

<?php
/**
* 为 ai_models 增加 extra_config 字段(可重复执行)
* 用法: php database/migrate_extra_config.php
*/
require __DIR__ . '/../vendor/autoload.php';
$envFile = dirname(__DIR__) . '/.env';
$env = [];
if (is_file($envFile)) {
foreach (file($envFile, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES) as $line) {
$line = trim($line);
if ($line === '' || str_starts_with($line, '#') || !str_contains($line, '=')) {
continue;
}
[$k, $v] = array_map('trim', explode('=', $line, 2));
$env[$k] = trim($v, " \t\"'");
}
}
$host = $env['DB_HOST'] ?? '127.0.0.1';
$name = $env['DB_NAME'] ?? 'ai_chat';
$user = $env['DB_USER'] ?? 'root';
$pass = $env['DB_PASS'] ?? '';
$port = $env['DB_PORT'] ?? '3306';
$pdo = new PDO("mysql:host={$host};port={$port};dbname={$name};charset=utf8mb4", $user, $pass);
$cols = $pdo->query("SHOW COLUMNS FROM ai_models LIKE 'extra_config'")->fetchAll();
if ($cols) {
echo "extra_config already exists\n";
exit(0);
}
$pdo->exec("ALTER TABLE ai_models ADD COLUMN extra_config JSON NULL COMMENT 'ComfyUI工作流等扩展配置' AFTER presence_penalty");
echo "extra_config column added\n";