Como consulta os datos dunha base de datos MySQL nunha táboa?Consulta Declaración/Comando/Sintaxe

Base de datos MySQLComo consultar os datos da táboa?Consulta Declaración/Comando/Sintaxe

MySQL Consulta datos

As bases de datos MySQL usan instrucións SQL SELECT para consultar datos.

Pode consultar datos na base de datos a través da xanela do símbolo do sistema mysql> ou mediante un script PHP.

gramática

A seguinte é a sintaxe xeral SELECT para consultar datos nunha base de datos MySQL:

SELECT column_name,column_name
FROM table_name
[WHERE Clause]
[OFFSET M ][LIMIT N]
  • Na instrución de consulta, pode usar unha ou máis táboas, separalas con comas (,) e usar a instrución WHERE para establecer as condicións de consulta.
  • O comando SELECT pode ler un ou máis rexistros.
  • Podes usar un asterisco (*) para substituír outros campos, a instrución SELECT devolverá todos os datos de campo da táboa
  • Podes usar a instrución WHERE para incluír calquera condición.
  • Pode especificar a compensación de datos na que a instrución SELECT inicia a consulta con OFFSET.Por defecto, a compensación é 0.
  • Podes usar a propiedade LIMIT para establecer o número de rexistros devoltos.

Obter datos a través do símbolo do sistema

No seguinte exemplo, usaremos o comando SQL SELECT para obter os datos da táboa de datos MySQL chenweiliang_tbl:

exemplo

O seguinte exemplo devolverá todos os rexistros da táboa de datos chenweiliang_tbl:

Ler a folla de datos:

select * from chenweiliang_tbl;

Use o script PHP para obter datos

Usando funcións PHP mysqli_query() e SELECCIÓN SQL comando para obter os datos.

Esta función úsase para executar comandos SQL e despois pasar funcións PHP mysqli_fetch_array() para utilizar ou emitir datos para todas as consultas.

mysqli_fetch_array() A función obtén unha fila do conxunto de resultados como unha matriz asociativa, ou unha matriz de números ou ambas as dúas. Devolve unha matriz xerada a partir das filas extraídas do conxunto de resultados, ou false se non hai máis filas.

O seguinte exemplo le todos os rexistros da táboa de datos chenweiliang_tbl.

exemplo

Probe o seguinte exemplo para mostrar todos os rexistros da táboa de datos chenweiliang_tbl.

Use o parámetro mysqli_fetch_array MYSQL_ASSOC para obter datos:

<?
php
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = '123456'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
 die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
mysqli_query($conn , "set names utf8");
 
$sql = 'SELECT chenweiliang_id, chenweiliang_title, 
 chenweiliang_author, submission_date
 FROM chenweiliang_tbl';
 
mysqli_select_db( $conn, 'chenweiliang' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
 die('无法读取数据: ' . mysqli_error($conn));
}
echo '<h2>陈沩亮博客 mysqli_fetch_array 测试<h2>';
echo '<table border="1"><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>';
while($row = mysqli_fetch_array($retval, MYSQL_ASSOC))
{
 echo "<tr><td> {$row['chenweiliang_id']}</td> ".
 "<td>{$row['chenweiliang_title']} </td> ".
 "<td>{$row['chenweiliang_author']} </td> ".
 "<td>{$row['submission_date']} </td> ".
 "</tr>";
}
echo '</table>';
mysqli_close($conn);
?>

 

No exemplo anterior, cada fila de rexistros lidos atribúese á variable $row e, a continuación, imprímese cada valor.

Nota:Lembra que se necesitas usar unha variable nunha cadea, pon a variable entre chaves.

No exemplo anterior, o segundo parámetro da función PHP mysqli_fetch_array() é MYSQL_ASSOC, configure este parámetro para consultar o resultado para devolver unha matriz asociativa, pode usar o nome do campo como índice da matriz.

PHP ofrece outra función mysqli_fetch_assoc(), a función toma unha fila do conxunto de resultados como unha matriz asociativa.Devolve unha matriz asociativa xerada a partir das filas tomadas do conxunto de resultados, ou false se non hai máis filas.

exemplo

Proba o seguinte exemplo, que usa mysqli_fetch_assoc() función para emitir todos os rexistros da táboa de datos chenweiliang_tbl:

Use mysqli_fetch_assoc para buscar datos:

<?
php
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = '123456'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
 die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
mysqli_query($conn , "set names utf8");
 
$sql = 'SELECT chenweiliang_id, chenweiliang_title, 
 chenweiliang_author, submission_date
 FROM chenweiliang_tbl';
 
mysqli_select_db( $conn, 'chenweiliang' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
 die('无法读取数据: ' . mysqli_error($conn));
}
echo '<h2>陈沩亮博客 mysqli_fetch_assoc 测试<h2>';
echo '<table border="1"><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>';
while($row = mysqli_fetch_assoc($retval))
{
 echo "<tr><td> {$row['chenweiliang_id']}</td> ".
 "<td>{$row['chenweiliang_title']} </td> ".
 "<td>{$row['chenweiliang_author']} </td> ".
 "<td>{$row['submission_date']} </td> ".
 "</tr>";
}
echo '</table>';
mysqli_close($conn);
?>

Tamén pode usar a constante MYSQL_NUM como segundo parámetro da función PHP mysqli_fetch_array(), que devolve unha matriz de números.

exemplo

Os seguintes exemplos usan MYSQL_NUM O parámetro mostra todos os rexistros da táboa de datos chenweiliang_tbl:

Use o parámetro mysqli_fetch_array MYSQL_NUM para obter datos:

<?
php
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = '123456'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
 die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
mysqli_query($conn , "set names utf8");
 
$sql = 'SELECT chenweiliang_id, chenweiliang_title, 
 chenweiliang_author, submission_date
 FROM chenweiliang_tbl';
 
mysqli_select_db( $conn, 'chenweiliang' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
 die('无法读取数据: ' . mysqli_error($conn));
}
echo '<h2>陈沩亮博客 mysqli_fetch_array 测试<h2>';
echo '<table border="1"><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>';
while($row = mysqli_fetch_array($retval, MYSQL_NUM))
{
 echo "<tr><td> {$row[0]}</td> ".
 "<td>{$row[1]} </td> ".
 "<td>{$row[2]} </td> ".
 "<td>{$row[3]} </td> ".
 "</tr>";
}
echo '</table>';
mysqli_close($conn);
?>

Os resultados dos tres exemplos anteriores son os mesmos.


liberación de memoria

É unha boa práctica liberar a memoria do cursor despois de executar unha instrución SELECT.

A memoria pódese liberar mediante a función PHP mysqli_free_result().

O seguinte exemplo mostra o uso desta función.

exemplo

Proba os seguintes exemplos:

Memoria libre con mysqli_free_result:

<?
php
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = '123456'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
 die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
mysqli_query($conn , "set names utf8");
 
$sql = 'SELECT chenweiliang_id, chenweiliang_title, 
 chenweiliang_author, submission_date
 FROM chenweiliang_tbl';
 
mysqli_select_db( $conn, 'chenweiliang' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
 die('无法读取数据: ' . mysqli_error($conn));
}
echo '<h2>陈沩亮博客 mysqli_fetch_array 测试<h2>';
echo '<table border="1"><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>';
while($row = mysqli_fetch_array($retval, MYSQL_NUM))
{
 echo "<tr><td> {$row[0]}</td> ".
 "<td>{$row[1]} </td> ".
 "<td>{$row[2]} </td> ".
 "<td>{$row[3]} </td> ".
 "</tr>";
}
echo '</table>';
// 释放内存
mysqli_free_result($retval);
mysqli_close($conn);
?>
 

Blog de Hope Chen Weiliang ( https://www.chenweiliang.com/ ) compartiu "Como consulta a base de datos MySQL os datos da táboa?Consulta Declaración/Comando/Sintaxe" para axudarche.

Benvido a compartir a ligazón deste artigo:https://www.chenweiliang.com/cwl-461.html

Benvido á canle de Telegram do blog de Chen Weiliang para recibir as últimas actualizacións.

🔔 Sexa o primeiro en obter a valiosa "Guía de uso da ferramenta de intelixencia artificial de marketing de contidos de ChatGPT" no directorio principal da canle. 🌟
📚 Esta guía contén un gran valor, 🌟Esta é unha oportunidade rara, non a perdas! ⏰⌛💨
Comparte e da like se che gusta!
O teu compartir e gústame son a nosa motivación continua!

 

发表 评论

O seu enderezo de correo electrónico non se publicará. Utilízanse os campos obrigatorios * Etiqueta

desprázate cara arriba