MySQL - Veritabanı Bilgisi

MySQL Meta Verilerini Alma ve Kullanma

MySQL'den almak isteyeceğiniz üç tür bilgi vardır.

  • Information about the result of queries - Bu, herhangi bir SELECT, UPDATE veya DELETE ifadesinden etkilenen kayıt sayısını içerir.

  • Information about the tables and databases - Bu tabloların ve veri tabanlarının yapısına ilişkin bilgileri içerir.

  • Information about the MySQL server - Buna veritabanı sunucusunun durumu, sürüm numarası vb. Dahildir.

Tüm bu bilgileri MySQL komut isteminde almak çok kolaydır, ancak PERL veya PHP API'lerini kullanırken, tüm bu bilgileri elde etmek için çeşitli API'leri açıkça çağırmamız gerekir.

Bir Sorgudan Etkilenen Satır Sayısını Elde Etme

Şimdi bu bilgiyi nasıl elde edeceğimize bakalım.

PERL Örneği

DBI betiklerinde, etkilenen satır sayısı, do( ) veya tarafından execute( ) komutu, sorguyu nasıl yürüttüğünüze bağlı olarak.

# Method 1
# execute $query using do( )
my $count = $dbh->do ($query);
# report 0 rows if an error occurred
printf "%d rows were affected\n", (defined ($count) ? $count : 0);

# Method 2
# execute query using prepare( ) plus execute( )
my $sth = $dbh->prepare ($query);
my $count = $sth->execute ( );
printf "%d rows were affected\n", (defined ($count) ? $count : 0);

PHP Örneği

PHP'de, mysql_affected_rows( ) işlevi, bir sorgunun kaç satır değiştiğini bulmak için kullanılır.

$result_id = mysql_query ($query, $conn_id);
# report 0 rows if the query failed
$count = ($result_id ? mysql_affected_rows ($conn_id) : 0);
print ("$count rows were affected\n");

Tabloları ve Veritabanlarını Listeleme

Bir veritabanı sunucusunda bulunan tüm veritabanlarını ve tabloları listelemek çok kolaydır. Sonucunuz olabilirnull Yeterli ayrıcalıklara sahip değilseniz.

Aşağıdaki kod bloğunda gösterilen yöntem dışında kullanabilirsiniz. SHOW TABLES veya SHOW DATABASES PHP veya PERL'de tabloların veya veritabanlarının listesini almak için sorgular.

PERL Örneği

# Get all the tables available in current database.
my @tables = $dbh->tables ( );

foreach $table (@tables ){
   print "Table Name $table\n";
}

PHP Örneği

<?php
   $con = mysql_connect("localhost", "userid", "password");
   
   if (!$con) {
      die('Could not connect: ' . mysql_error());
   }
   $db_list = mysql_list_dbs($con);

   while ($db = mysql_fetch_object($db_list)) {
      echo $db->Database . "<br />";
   }
   mysql_close($con);
?>

Sunucu Meta Verilerini Alma

MySQL'de, veritabanı sunucusu hakkında çeşitli önemli bilgileri almak için MySQL komut isteminde veya PHP gibi herhangi bir komut dosyası kullanılarak çalıştırılabilen birkaç önemli komut vardır.

Sr.No. Komut ve Açıklama
1

SELECT VERSION( )

Sunucu sürümü dizesi

2

SELECT DATABASE( )

Mevcut veritabanı adı (yoksa boştur)

3

SELECT USER( )

Mevcut kullanıcı adı

4

SHOW STATUS

Sunucu durum göstergeleri

5

SHOW VARIABLES

Sunucu yapılandırma değişkenleri