MySQL数据删除

MySQL数据删除

以下是 SQL DELETE 语句从 MySQL 数据表中删除数据的通用语法:

DELETE FROM table_name WHERE Clause

  • 如果没有指定 WHERE 子句,MySQL 表中的所有记录将被删除。
  • 你可以在 WHERE 子句中指定任何条件
  • 您可以在单个表中一次性删除记录。
  • 当你想删除数据表中指定的记录时 WHERE 子句是非常有用的

实操代码:

WHERE 语句的使用可以限制前面操作的范围

int lession11()

{

MYSQL* mysql = new MYSQL();

//MYSQL mysql;//占用的是栈上的内存

MYSQL* pDB = mysql_init(mysql);

if (pDB == NULL) {

std::cout << "mysql_init failed!" << std::endl;

return -1;

}

pDB = mysql_real_connect(pDB, "localhost", "root", "FengPan12#$56", "mysql", 3306, NULL, 0);

std::cout << pDB << std::endl;

if (pDB) {

std::string sql = "CREATE DATABASE hello";

int ret = mysql_real_query(pDB, sql.c_str(), (unsigned long)sql.size());

if (ret != 0) {

std::cout << "mysql error:" << mysql_error(pDB) << std::endl;

}

MYSQL_RES* result = mysql_use_result(mysql);

if (result != NULL) {

show_result(result);

std::cout << "===================================================" << std::endl;

mysql_free_result(result);

}

//授予权限

sql = "GRANT ALL ON hello.* TO 'hello'@'localhost';";

ret = mysql_real_query(pDB, sql.c_str(), (unsigned long)sql.size());

if (ret != 0) {

std::cout << "mysql error:" << mysql_error(pDB) << std::endl;

return -1;

}

result = mysql_use_result(mysql);

if (result != NULL) {

show_result(result);

std::cout << "===================================================" << std::endl;

mysql_free_result(result);

}

sql = "USE hello;";

ret = mysql_real_query(pDB, sql.c_str(), (unsigned long)sql.size());

if (ret != 0) {

std::cout << "mysql error:" << mysql_error(pDB) << std::endl;

return -1;

}

result = mysql_use_result(mysql);

if (result != NULL) {

show_result(result);

std::cout << "===================================================" << std::endl;

mysql_free_result(result);

}

sql = "CREATE TABLE IF NOT EXISTS `hello` (`编号` NVARCHAR(16) PRIMARY KEY)ENGINE=InnoDB DEFAULT CHARSET=utf8;";

ret = mysql_real_query(pDB, sql.c_str(), (unsigned long)sql.size());

if (ret != 0) {

std::cout << "mysql error:" << mysql_error(pDB) << std::endl;

return -1;

}

sql = "INSERT INTO `hello` (`编号`) VALUES (\"9527\");";

ret = mysql_real_query(pDB, sql.c_str(), (unsigned long)sql.size());

if (ret != 0) {

std::cout << "mysql error:" << mysql_error(pDB) << std::endl;

return -1;

}

sql = "INSERT INTO `hello` (`编号`) VALUES (\"9528\");";

ret = mysql_real_query(pDB, sql.c_str(), (unsigned long)sql.size());

if (ret != 0) {

std::cout << "mysql error:" << mysql_error(pDB) << std::endl;

return -1;

}

sql = "DELETE FROM `hello` WHERE `编号`=\"9527\";";

ret = mysql_real_query(pDB, sql.c_str(), (unsigned long)sql.size());

if (ret != 0) {

std::cout << "mysql error:" << mysql_error(pDB) << std::endl;

return -1;

}

sql = "DROP TABLE `hello`;";

ret = mysql_real_query(pDB, sql.c_str(), (unsigned long)sql.size());

if (ret != 0) {

std::cout << "mysql error:" << mysql_error(pDB) << std::endl;

return -1;

}

sql = "DROP DATABASE hello;";

ret = mysql_real_query(pDB, sql.c_str(), (unsigned long)sql.size());

if (ret != 0) {

std::cout << "mysql error:" << mysql_error(pDB) << std::endl;

return -1;

}

mysql_close(pDB);

}

delete mysql;

return 0;

}

posted @ 2022-10-21 21:47  Athenavi  阅读(135)  评论(0)    收藏  举报