新闻动态

你的位置:九游官方正版手游下载app > 新闻动态 > 在C语言中,将数据写入数据库通常需要使用数据库连接库_SQLite_rc_

在C语言中,将数据写入数据库通常需要使用数据库连接库_SQLite_rc_

发布日期:2025-04-15 20:30    点击次数:180

在C语言中,将数据写入数据库通常需要使用数据库连接库,例如MySQL的C API(libmysqlclient)、SQLite的C API、或者通过ODBC(Open Database Connectivity)访问其他数据库。下面是一个使用SQLite的简单示例,展示如何将数据写入数据库。

使用SQLite将数据写入数据库

安装SQLite库:确保你的开发环境中安装了SQLite库。如果使用Linux,可以通过包管理器安装;在Windows上,可以从SQLite官网下载预编译的二进制文件。

编写C代码:

c

复制代码

#include <------>

#include <sqlite3.h>

#include <stdlib.h>

#include <string.h>

int main() {

展开剩余82%

sqlite3 *db;

char *errMsg = 0;

int rc;

const char *sql;

// 打开数据库(如果数据库不存在,将会创建一个新的数据库文件)

rc = sqlite3_open("test.db", &db);

if (rc) {

fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db));

return(1);

} else {

fprintf(stdout, "Opened database successfully\n");

}

// 创建表的SQL语句

sql = "CREATE TABLE IF NOT EXISTS COMPANY(" \

"ID INT PRIMARY KEY NOT NULL," \

"NAME TEXT NOT NULL," \

"AGE INT NOT NULL," \

"ADDRESS CHAR(50)," \

"SALARY REAL );";

// 执行SQL语句

rc = sqlite3_exec(db, sql, 0, 0, &errMsg);

if (rc != SQLITE_OK) {

fprintf(stderr, "SQL error: %s\n", errMsg);

sqlite3_free(errMsg);

} else {

fprintf(stdout, "Table created successfully\n");

}

// 插入数据的SQL语句

sql = "INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) " \

"VALUES (1, 'Paul', 32, 'California', 20000.00 ); " \

"INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) " \

"VALUES (2, 'Allen', 25, 'Texas', 15000.00 ); ";

// 执行插入SQL语句

rc = sqlite3_exec(db, sql, 0, 0, &errMsg);

if (rc != SQLITE_OK) {

fprintf(stderr, "SQL error: %s\n", errMsg);

sqlite3_free(errMsg);

} else {

fprintf(stdout, "Records created successfully\n");

}

// 关闭数据库

sqlite3_close(db);

return 0;

}

代码说明

sqlite3_open:用于打开或创建一个SQLite数据库。

sqlite3_exec:用于执行SQL语句。

CREATE TABLE:创建一个名为COMPANY的表,如果该表不存在。

INSERT INTO:向COMPANY表中插入数据。

sqlite3_close:关闭数据库连接。

编译和运行

确保SQLite库已正确安装,并使用以下命令编译和运行程序:

sh

复制代码

gcc -o myprogram myprogram.c -lsqlite3

./myprogram

这将编译并运行你的程序,创建数据库文件test.db,并在其中创建表和插入数据。

其他数据库

如果你使用其他数据库(如MySQL),你需要安装相应的C API库(如MySQL的libmysqlclient),并使用相应的API函数来连接和操作数据库。连接和操作的方式会因数据库而异,但基本的步骤(连接、执行SQL、关闭连接)是相似的。

发布于:浙江省