编程实现关系的存储及显示,以验证存储的正确性。c语言
时间: 2024-03-10 22:48:45 浏览: 20
在 C 语言中,可以使用 SQLite 数据库来存储关系,并使用 SQLite3 库来操作数据库。下面是一个简单的示例程序,演示如何创建一个名为“Person”的表,并向其中插入数据,然后查询并显示所有数据:
```c
#include <stdio.h>
#include <stdlib.h>
#include <sqlite3.h>
static int callback(void *data, int argc, char **argv, char **azColName){
int i;
for(i=0; i<argc; i++){
printf("%s = %s\n", azColName[i], argv[i] ? argv[i] : "NULL");
}
printf("\n");
return 0;
}
int main(int argc, char* argv[]) {
sqlite3 *db;
char *zErrMsg = 0;
int rc;
// 打开数据库
rc = sqlite3_open("test.db", &db);
if (rc) {
fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db));
sqlite3_close(db);
return 1;
}
// 创建表
char *sql = "CREATE TABLE Person ("
"id INTEGER PRIMARY KEY,"
"name TEXT NOT NULL,"
"age INTEGER,"
"gender TEXT"
");";
rc = sqlite3_exec(db, sql, callback, 0, &zErrMsg);
if (rc != SQLITE_OK) {
fprintf(stderr, "SQL error: %s\n", zErrMsg);
sqlite3_free(zErrMsg);
}
// 插入数据
sql = "INSERT INTO Person (id, name, age, gender) "
"VALUES (1, '张三', 25, '男'); "
"INSERT INTO Person (id, name, age, gender) "
"VALUES (2, '李四', 30, '男'); "
"INSERT INTO Person (id, name, age, gender) "
"VALUES (3, '王五', 28, '女'); ";
rc = sqlite3_exec(db, sql, callback, 0, &zErrMsg);
if (rc != SQLITE_OK) {
fprintf(stderr, "SQL error: %s\n", zErrMsg);
sqlite3_free(zErrMsg);
}
// 查询数据
sql = "SELECT * FROM Person;";
rc = sqlite3_exec(db, sql, callback, 0, &zErrMsg);
if (rc != SQLITE_OK) {
fprintf(stderr, "SQL error: %s\n", zErrMsg);
sqlite3_free(zErrMsg);
}
// 关闭数据库
sqlite3_close(db);
return 0;
}
```
运行程序后,会在当前目录下创建一个名为“test.db”的 SQLite 数据库文件。程序会创建一个名为“Person”的表,并向其中插入三个人员的信息。最后,程序会查询表中的所有数据,并以表格的形式进行显示。可以根据显示结果来验证存储的正确性。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)