MariaDB - Excluir consulta

O comando DELETE exclui as linhas da tabela especificada e retorna a quantidade excluída. Acesse a quantidade excluída com a função ROW_COUNT (). Uma cláusula WHERE especifica linhas e, em sua ausência, todas as linhas são excluídas. Uma cláusula LIMIT controla o número de linhas excluídas.

Em uma instrução DELETE para várias linhas, ele exclui apenas as linhas que satisfazem uma condição; e as cláusulas LIMIT e WHERE não são permitidas. As instruções DELETE permitem excluir linhas de tabelas em bancos de dados diferentes, mas não permitem excluir de uma tabela e, em seguida, selecionar da mesma tabela em uma subconsulta.

Revise a seguinte sintaxe DELETE -

DELETE FROM table_name [WHERE …]

Execute um comando DELETE no prompt de comando ou usando um script PHP.

O Prompt de Comando

No prompt de comando, basta usar um comando padrão -

[email protected]# mysql –u root –p password;
Enter password:*******
mysql> use PRODUCTS;
Database changed
mysql> DELETE FROM products_tbl WHERE product_id=133;
mysql> SELECT * from products_tbl WHERE ID_number='133';
ERROR 1032 (HY000): Can't find record in 'products_tbl'

PHP Delete Query Script

Use o mysql_query() função em instruções de comando DELETE -

<?php
   $dbhost = 'localhost:3036';
   $dbuser = 'root';
   $dbpass = 'rootpassword';
   $conn = mysql_connect($dbhost, $dbuser, $dbpass);
   
   if(! $conn ) {
      die('Could not connect: ' . mysql_error());
   }

   $sql = 'DELETE FROM products_tbl WHERE product_id = 261';
   mysql_select_db('PRODUCTS');
   $retval = mysql_query( $sql, $conn );

   if(! $retval ) {
      die('Could not delete data: ' . mysql_error());
   }

   echo "Deleted data successfully\n";
   mysql_close($conn);
?>

Com a exclusão de dados bem-sucedida, você verá a seguinte saída -

mysql> Deleted data successfully
mysql> SELECT * from products_tbl WHERE ID_number='261';
ERROR 1032 (HY000): Can't find record in 'products_tbl'