UTF-8 string (64) "치명적 오류:: DB 마이그레이션에 실패 했습니다."
치명적 오류:: DB 마이그레이션에 실패 했습니다.
UTF-8 string (36) "관리자에게 문의 바랍니다."
$e mysqli_sql_exception (8) "Unknown column 'use_secret' in 'TB_BOARD_SETUP'"
  • Source
  • Properties (8)
  • Available methods (11)
  • $this->connID->next_result();
    if ($res = $this->connID->store_result()) {
    $res->free();
    }
    }
    try {
    return $this->connID->query($this->prepQuery($sql), $this->resultMode);
    } catch (mysqli_sql_exception $e) {
    log_message('error', $e->getMessage());
    if ($this->DBDebug) {
    throw $e;
    }
    }
  • protected code -> integer 1054
    protected file -> string (51) "/home_awb/dev/system/Database/MySQLi/Connection.php"
    • File (17.5KB)
    • -rw-rw-r-- 997 994 17.5KB Oct 13 2022 /home_awb/dev/system/Database/MySQLi/Connection.php
      
    protected line -> integer 292
    protected message -> string (47) "Unknown column 'use_secret' in 'TB_BOARD_SETUP'"
    protected sqlstate -> string (5) "42S22"
    private previous -> null
    private string -> string (0) ""
    private trace -> Debug Backtrace (11)
    .../Database/MySQLi/Connection.php:292 mysqli->query($query, $resultmode)
    • Source
    • $this->connID->next_result();
      if ($res = $this->connID->store_result()) {
      $res->free();
      }
      }
      try {
      return $this->connID->query($this->prepQuery($sql), $this->resultMode);
      } catch (mysqli_sql_exception $e) {
      log_message('error', $e->getMessage());
      if ($this->DBDebug) {
      throw $e;
      }
      }
    .../Database/BaseConnection.php:670 CodeIgniter\Database\MySQLi\Connection->execute(string $sql)
    • Source
    • */
      public function simpleQuery(string $sql)
      {
      if (empty($this->connID)) {
      $this->initialize();
      }
      return $this->execute($sql);
      }
      /**
      * Disable Transactions
      *
      * This permits transactions to be disabled at run-time.
      */
    .../Database/BaseConnection.php:598 CodeIgniter\Database\BaseConnection->simpleQuery(string $sql)
    • Source
    • $startTime = microtime(true);
      // Always save the last query so we can use
      // the getLastQuery() method.
      $this->lastQuery = $query;
      // Run the query for real
      if (! $this->pretend && false === ($this->resultID = $this->simpleQuery($query->getQuery()))) {
      $query->setDuration($startTime, $startTime);
      // This will trigger a rollback if transactions are being used
      if ($this->transDepth !== 0) {
      $this->transStatus = false;
      }
    .../Database/Forge.php:783 CodeIgniter\Database\BaseConnection->query(string $sql, $binds = null, bool $setEscapeFlags = true, string $queryClass = '')
    • Source
    • }
      return false;
      }
      if ($sqls !== null) {
      foreach ($sqls as $sql) {
      if ($this->db->query($sql) === false) {
      return false;
      }
      }
      }
      return true;
      }
    .../App/Database/Migrations/20210815100000_AlterBoardSetup.php:18 CodeIgniter\Database\Forge->modifyColumn(string $table, $field)
    • Source
    • /* ******************** 성공 ******************** */
      public function up(){
      //비밀글 모두 설정 추가
      $this->forge->modifyColumn('TB_BOARD_SETUP',[
      'use_secret'=>[
      'type'=>'ENUM',
      'constraint'=>['Y','N','ALL'],
      'default'=>'Y',
      'comment' => '비밀글 사용',
      ],
      ]);
      //새글 기준일 추가
    .../Database/MigrationRunner.php:863 App\Database\Migrations\AlterBoardSetup->up()
    • Source
    • return false;
      }
      throw new RuntimeException($message);
      }
      $instance->{$direction}();
      return true;
      }
      }
    .../Database/MigrationRunner.php:186 CodeIgniter\Database\MigrationRunner->migrate($direction, $migration)
    • Source
    • foreach ($this->getHistory((string) $group) as $history) {
      unset($migrations[$this->getObjectUid($history)]);
      }
      $batch = $this->getLastBatch() + 1;
      foreach ($migrations as $migration) {
      if ($this->migrate('up', $migration)) {
      if ($this->groupSkip === true) {
      $this->groupSkip = false;
      continue;
      }
      $this->addHistory($migration, $batch);
    .../App/Config/Events.php:54 CodeIgniter\Database\MigrationRunner->latest(?string $group = null)
    • Source
    • Events::on('DBQuery', 'CodeIgniter\Debug\Toolbar\Collectors\Database::collect');
      Services::toolbar()->respond();
      }
      ## DB마이그레이션
      $migrate = \Config\Services::migrations();
      try{
      $migrate->latest();
      } catch (\Throwable $e){
      d('치명적 오류:: DB 마이그레이션에 실패 했습니다.');
      d('관리자에게 문의 바랍니다.');
      dd($e);
      }
      });
    .../Events/Events.php:149 CodeIgniter\Events\Events::Config\{closure}()
    • Source
    • }
      $listeners = static::listeners($eventName);
      foreach ($listeners as $listener) {
      $start = microtime(true);
      $result = static::$simulate === false ? $listener(...$arguments) : true;
      if (CI_DEBUG) {
      static::$performanceLog[] = [
      'start' => $start,
      'end' => microtime(true),
      'event' => strtolower($eventName),
      ];
    .../CodeIgniter.php:308 CodeIgniter\Events\Events::trigger($eventName, $arguments)
    • Source
    • if ($this->request instanceof IncomingRequest && $this->request->getMethod() === 'cli') {
      $this->response->setStatusCode(405)->setBody('Method Not Allowed');
      return $this->sendResponse();
      }
      Events::trigger('pre_system');
      // Check for a cached page. Execution will stop
      // if the page has been cached.
      $cacheConfig = new Cache();
      $response = $this->displayCache($cacheConfig);
      if ($response instanceof ResponseInterface) {
      if ($returnResponse) {
    <ROOT>/index.php:37 CodeIgniter\CodeIgniter->run(?CodeIgniter\Router\RouteCollectionInterface $routes = null, bool $returnResponse = false)
    • Source
    • /*
      *---------------------------------------------------------------
      * LAUNCH THE APPLICATION
      *---------------------------------------------------------------
      * Now that everything is setup, it's time to actually fire
      * up the engines and make this app do its thang.
      */
      $app->run();
  • public __construct($message, $code, $previous)
    new \mysqli_sql_exception($message, $code, $previous)
    public __wakeup()
    final public getMessage()
    $e->getMessage()
    final public getCode()
    $e->getCode()
    final public getFile()
    $e->getFile()
    final public getLine()
    $e->getLine()
    final public getTrace()
    $e->getTrace()
    final public getPrevious()
    $e->getPrevious()
    final public getTraceAsString()
    $e->getTraceAsString()
    public __toString()
    (string) $e
    final private __clone()