Beispiel #1
0
 /**
  * Убрать после отказа от поддержки MySQL 4.1.x
  */
 protected function check_hash_column_type()
 {
     static $hash_column_type_checked = false;
     if (!$hash_column_type_checked) {
         $hash_length = nc_search_util::can_use_binary_columns() ? "20" : "40";
         /** @var nc_db $db */
         $db = nc_core('db');
         $hash_column_definition = $db->get_row("SHOW COLUMNS FROM `Search_Link` LIKE 'Hash'", ARRAY_A);
         if (!strpos($hash_column_definition['Type'], $hash_length)) {
             $db->query("ALTER TABLE `Search_Link` CHANGE `Hash` `Hash` BINARY({$hash_length}) NOT NULL");
         }
         $hash_column_type_checked = true;
     }
 }
Beispiel #2
0
 /**
  * @param $url
  * @return string
  */
 protected function make_hash_statement($url)
 {
     $unhex = nc_search_util::can_use_binary_columns() ? "UNHEX" : "";
     return "{$unhex}(SHA1('" . nc_search_util::db_escape($url) . "'))";
 }