Latest web development tutorials

MySQL kwerendy danych

bazy danych MySQL za pomocą instrukcji SQL SELECT kwerendy danych.

Można mysql> okno wiersza polecenia do wyszukiwania danych w bazie danych, lub poprzez skrypt PHP do kwerendy danych.

gramatyka

Poniżej znajduje się wspólne dane kwerendy w składni SELECT bazy danych MySQL:

SELECT column_name,column_name
FROM table_name
[WHERE Clause]
[OFFSET M ][LIMIT N]
  • można wyszukać za pomocą jednej lub więcej tabel, należy użyć przecinka między tabelami (,) segmentacji i użyć klauzuli WHERE, aby ustawić kryteria wyszukiwania.
  • Polecenie SELECT odczytuje jeden lub więcej rekordów.
  • Można użyć gwiazdki (*) zamiast innych dziedzinach, SELECT zwróci wszystkie pola w tabeli danych
  • Można użyć klauzuli WHERE zawierać żadnych warunków.
  • Można podać dane przesunięcie SELECT zapytania zaczyna się od offsetu. Domyślnie offset jest 0.
  • Ograniczyć liczbę rekordów za pomocą których można ustawić właściwość zwrócony.

Pobierz dane z wiersza poleceń

Poniższe przykłady Dostaniemy tabele danych MySQL w3big_tbl dane za pośrednictwem polecenia SQL SELECT:

Przykłady

Poniższy przykład zwraca wszystkie rekordy w w3big_tbl tabeli danych:

root@host# mysql -u root -p password;
Enter password:*******
mysql> use w3big;
Database changed
mysql> SELECT * from w3big_tbl 
+-------------+----------------+-----------------+-----------------+
| w3big_id | w3big_title | w3big_author | submission_date |
+-------------+----------------+-----------------+-----------------+
|           1 | Learn PHP      | John Poul       | 2007-05-21      |
|           2 | Learn MySQL    | Abdul S         | 2007-05-21      |
|           3 | JAVA Tutorial  | Sanjay          | 2007-05-21      |
+-------------+----------------+-----------------+-----------------+
3 rows in set (0.01 sec)

mysql>

Za pomocą skryptów PHP do pobierania danych

Za pomocą funkcji PHP mysql_query () i polecenia SQL SELECT, aby pobrać dane.

Ta funkcja służy do wykonywania poleceń SQL, a następnie za pomocą funkcji mysql_fetch_array () w PHP do korzystania lub dane wyjściowe dla wszystkich zapytań.

mysql_fetch_array () funkcji Fetch wiersz jako tablicę asocjacyjną, tablicę numeryczną, albo jedno i drugie, według tablicy zwrotu otrzymanej od wyniku zestaw wierszy generowany, jeżeli nie ma więcej wierszy wrócił z fałszywych wyników.

Poniższe przykłady mają czytać wszystkie rekordy z danymi w w3big_tbl stołowego.

Przykłady

Wypróbuj poniższe przykłady, aby pokazać wszystkie rekordy tabel danych w3big_tbl.

<?php
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'rootpassword';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT w3big_id, w3big_title, 
               w3big_author, submission_date
        FROM w3big_tbl';

mysql_select_db('w3big');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
  die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
    echo "Tutorial ID :{$row['w3big_id']}  <br> ".
         "Title: {$row['w3big_title']} <br> ".
         "Author: {$row['w3big_author']} <br> ".
         "Submission Date : {$row['submission_date']} <br> ".
         "--------------------------------<br>";
} 
echo "Fetched data successfully\n";
mysql_close($conn);
?>

Powyższy przykład, zapisy przeczytać każda linia jest przypisana do zmiennej $ row, a następnie wydrukować każdą wartość.

Uwaga: Pamiętaj, że jeśli chcesz używać zmiennych w łańcuchu, należy ustawić zmienną umieszczone w nawiasach klamrowych.

W powyższym przykładzie, PHP mysql_fetch_array () funkcję drugiego parametru jest MYSQL_ASSOC ustaw parametr zwracany wyniki kwerendy asocjacyjną, można użyć nazwy pola jako indeks tablicy.

PHP zapewnia inną funkcję mysql_fetch_assoc (), funkcja Zapisuje wiersz wyniku w tablicy asocjacyjnej. Zwraca tablicę asocjacyjną uzyskanych od wyniku zestaw wierszy generowany, jeżeli nie ma więcej wierszy, zwraca false.

Przykłady

Spróbuj wykonać następujące czynności instancja korzysta mysql_fetch_assoc () do wyjścia wszystkie rekordy z tabel danych w3big_tbl:

<?php
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'rootpassword';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT w3big_id, w3big_title, 
               w3big_author, submission_date
        FROM w3big_tbl';

mysql_select_db('w3big');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
  die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_assoc($retval))
{
    echo "Tutorial ID :{$row['w3big_id']}  <br> ".
         "Title: {$row['w3big_title']} <br> ".
         "Author: {$row['w3big_author']} <br> ".
         "Submission Date : {$row['submission_date']} <br> ".
         "--------------------------------<br>";
} 
echo "Fetched data successfully\n";
mysql_close($conn);
?>

Można także użyć stałej MYSQL_NUM jak PHP mysql_fetch_array () Drugi argument funkcji zwraca tablicę liczb.

Przykłady

W poniższym przykładzie użyto parametru MYSQL_NUM wyświetla wszystkie rekordy w w3big_tbl tabeli danych:

<?php
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'rootpassword';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT w3big_id, w3big_title, 
               w3big_author, submission_date
        FROM w3big_tbl';

mysql_select_db('w3big');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
  die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_NUM))
{
    echo "Tutorial ID :{$row[0]}  <br> ".
         "Title: {$row[1]} <br> ".
         "Author: {$row[2]} <br> ".
         "Submission Date : {$row[3]} <br> ".
         "--------------------------------<br>";
}
echo "Fetched data successfully\n";
mysql_close($conn);
?>

Powyższe trzy przykłady wyników wyjściowe są takie same.


uwalnianie pamięci

Po tym jak skończyliśmy realizację SELECT, wydany pamięci Kursor jest dobrym nawykiem. , PHP funkcji mysql_free_result (), aby osiągnąć uwalnianie pamięci.

Poniższy przykład pokazuje, jak korzystać z tej funkcji.

Przykłady

Wypróbuj poniższe przykłady:

<?php
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'rootpassword';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT w3big_id, w3big_title, 
               w3big_author, submission_date
        FROM w3big_tbl';

mysql_select_db('w3big');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
  die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_NUM))
{
    echo "Tutorial ID :{$row[0]}  <br> ".
         "Title: {$row[1]} <br> ".
         "Author: {$row[2]} <br> ".
         "Submission Date : {$row[3]} <br> ".
         "--------------------------------<br>";
}
mysql_free_result($retval);
echo "Fetched data successfully\n";
mysql_close($conn);
?>