Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Przestarzałe funkcje MySQL

To po prostu nie ma sensu.
Zwykła mechaniczna wymiana nic nie da.

Musisz zrozumieć, że nie są to stare funkcje same w sobie, ale odradza się stosowanie starych sposobów ich używania.

Jeśli więc chcesz zachować swój obecny kod bez zmian — po prostu go zachowaj.
Czerwone pole w instrukcji to nie to przerażające, a wersja, w której te funkcje faktycznie są, wywołałaby błąd na poziomie przestarzałym, nie została jeszcze wydana.
Masz więc 3-4 lata do przodu, zanim napotkasz jakiekolwiek niedogodności. Nawet wtedy wyłączenie błędów poziomu przestarzałego jest kwestią jednego ustawienia środowiska wykonawczego.

Ale jeśli chcesz napisać lepszy kod - musisz użyć sposobu OOP z PDO (i mogę was zapewnić, że OOP nie jest tym) straszenie. Chociaż wymaga to pewnej wiedzy podczas pisania, bardzo łatwo jest skorzystać z gotowej klasy. Jedyna różnica w stosunku do znanych funkcji to mały -> rzecz. Nic wielkiego)

A więc proszę bardzo:

function db_connect_select() 
{
    $dsn = 'mysql:host='.MYSQL_HOSTNAME.';dbname='.DATABASE.';charset=utf8';
    $opt = array(
        PDO::ATTR_ERRMODE            => PDO::ERRMODE_EXCEPTION,
        PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
    ); 
    return new PDO($dsn,USERNAME_SELECT, PASSWORD, $opt);
}

function db_result_to_array($query,) 
{
  // not needed with PDO
}

function select_top_tags()
{
    global $pdo;

    $query = 'SELECT * FROM top_tags ORDER BY tag_name ASC';
    $stm = $pdo->prepare($query);
    $stm->execute();
    return $stm->fetchAll();
}

użycie:

$pdo = db_connect_select(); // somewhere in a bootstrap file
$tags = select_top_tags();


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ustawić pole do automatycznego wstawiania sygnatury czasowej podczas UPDATE?

  2. walidacja i dodawanie danych do tabeli db

  3. Mysql wyszukuje ciąg i liczbę za pomocą MATCH() AGAINST()

  4. MySQL usuwa zduplikowane rekordy, ale zachowuje najnowsze

  5. Utwórz użytkownika MySQL w systemie Linux za pomocą wiersza poleceń