Hay tres datos que le gustaría obtener de MySQLi.
Información sobre el resultado de las solicitudes – Esto incluye el número de registros que se ven afectados por cualquier instrucción SELECT, UPDATE o DELETE.
Información sobre tablas y bases de datos – Esto incluye información relacionada con la estructura de tablas y bases de datos.
Información del servidor MySQLi – Esto incluye el estado actual del servidor de la base de datos, el número de versión, etc.
Es muy fácil obtener toda esta información en la línea de comandos de mysqli, pero cuando usamos las API de PERL o PHP, necesitamos llamar explícitamente a varias API para obtener toda esta información. La siguiente sección le muestra cómo obtener esta información.
En los scripts DBI, la función do () o execute () devuelve el número de filas afectadas, dependiendo de cómo ejecute la consulta:
# Method 1 # execute $query using do( ) my $count = $dbh->do ($query); # report 0 rows if an error occurred printf "%d rows were affectedn", (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 affectedn", (defined ($count) ? $count : 0);
En PHP, llame a la función mysqli_affected_rows () para averiguar cuántas filas han cambiado en la consulta:
$result_id = mysqli_query ($query, $conn_id); # report 0 rows if the query failed $count = ($result_id ? mysqli_affected_rows ($conn_id) : 0); print ("$count rows were affectedn");
Es muy fácil enumerar todas las bases de datos y tablas disponibles en el servidor de bases de datos. Su resultado puede ser nulo si no tiene suficientes privilegios.
Además del método que mencioné a continuación, puede usar las consultas SHOW TABLES o SHOW DATABASES para obtener una lista de tablas o bases de datos en PHP o PERL.
# Get all the tables available in current database. my @tables = $dbh->tables ( ); foreach $table (@tables ){ print "Table Name $tablen"; }
<?php $servername = "localhost:3306"; $username = "root"; $password = ""; $dbname = "TUTORIALS"; $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("Connection failed: ". $conn->connect_error); } echo"Database connected"; $sql="SHOW DATABASES"; if (!($result = mysqli_query($conn,$sql))) { printf("Error: %sn", mysqli_error($conn)); } while( $row = mysqli_fetch_row( $result ) ){ if (($row[0]!="information_schema") && ($row[0]!="mysql")) { echo $row[0]."rn"; } } $conn->close(); ?>
MySQL tiene los siguientes comandos que se pueden ejecutar en la línea de comandos de mysql o usando cualquier script como PHP para obtener información importante sobre el servidor de la base de datos.
No Señor. | Comando y descripción |
---|---|
uno |
SELECCIONAR VERSIÓN () Cadena de versión del servidor |
2 |
SELECCIONAR BASE DE DATOS () El nombre de la base de datos actual (vacío si no) |
3 |
SELECCIONAR USUARIO () Nombre de usuario actual |
cuatro |
MOSTRAR ESTADO Indicadores de estado del servidor |
cinco |
MOSTRAR VARIABLES Variables de configuración del servidor |
🚫