请用c++编写一个通过进行输入对电影名字增加或删除的代码
时间: 2024-02-12 15:09:17 浏览: 64
同学录 有删除 有插入 有显示 等等 C++代码
好的,为了实现通过用户输入进行电影名字的增加或删除操作,我们需要编写 C++ 代码来获取用户输入,并将输入的电影名字传递给数据库操作函数以完成相应的操作。以下是 C++ 中使用 SQLite 数据库编写的示例代码,该代码可以实现通过用户输入进行电影名字的增加和删除操作:
```c++
#include <iostream>
#include <sqlite3.h>
using namespace std;
// SQLite 数据库指针
sqlite3 *db;
// 打开数据库连接
void open_db() {
int rc = sqlite3_open("movies.db", &db);
if (rc) {
cerr << "无法打开数据库: " << sqlite3_errmsg(db) << endl;
exit(1);
} else {
cout << "成功打开数据库" << endl;
}
}
// 关闭数据库连接
void close_db() {
sqlite3_close(db);
cout << "成功关闭数据库" << endl;
}
// 增加电影名字
void add_movie(string name) {
string sql = "INSERT INTO movies(name) VALUES('" + name + "')";
char *errmsg;
int rc = sqlite3_exec(db, sql.c_str(), NULL, NULL, &errmsg);
if (rc != SQLITE_OK) {
cerr << "增加电影名字失败: " << errmsg << endl;
sqlite3_free(errmsg);
} else {
cout << "成功增加电影名字: " << name << endl;
}
}
// 删除电影名字
void del_movie(string name) {
string sql = "DELETE FROM movies WHERE name='" + name + "'";
char *errmsg;
int rc = sqlite3_exec(db, sql.c_str(), NULL, NULL, &errmsg);
if (rc != SQLITE_OK) {
cerr << "删除电影名字失败: " << errmsg << endl;
sqlite3_free(errmsg);
} else {
cout << "成功删除电影名字: " << name << endl;
}
}
int main() {
// 打开数据库连接
open_db();
// 获取用户输入
string name;
cout << "请输入电影名字: ";
getline(cin, name);
// 判断用户输入并执行相应的操作
if (!name.empty()) {
char cmd;
cout << "您想要增加或删除电影名字?(A: 增加,D: 删除): ";
cin >> cmd;
if (cmd == 'A' || cmd == 'a') {
add_movie(name);
} else if (cmd == 'D' || cmd == 'd') {
del_movie(name);
} else {
cerr << "无效的操作指令" << endl;
}
} else {
cerr << "电影名字不能为空" << endl;
}
// 关闭数据库连接
close_db();
return 0;
}
```
在这个示例代码中,我们通过 `getline` 函数获取用户的输入电影名字,然后让用户选择增加或删除电影名字。根据用户的选择,程序将执行相应的操作。你可以根据需要修改这个示例代码,来实现你的具体需求。
阅读全文