c语言获取系统时间后怎么送入数据库
时间: 2023-12-15 20:04:39 浏览: 35
要将C语言获取到的系统时间送入数据库,需要先连接到数据库,然后构造一个插入SQL语句,将获取到的时间作为值插入到相应的字段中。
以下是一个简单的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <mysql.h>
#include <time.h>
int main() {
MYSQL *conn;
MYSQL_RES *res;
MYSQL_ROW row;
char *server = "localhost";
char *user = "root";
char *password = "password";
char *database = "testdb";
conn = mysql_init(NULL);
// 连接到数据库
if (!mysql_real_connect(conn, server, user, password, database, 0, NULL, 0)) {
fprintf(stderr, "%s\n", mysql_error(conn));
exit(1);
}
// 获取当前时间
time_t current_time;
char formatted_time[20];
struct tm *time_info;
time(¤t_time);
time_info = localtime(¤t_time);
strftime(formatted_time, 20, "%Y-%m-%d %H:%M:%S", time_info);
// 构造插入SQL语句并执行
char *insert_sql = "INSERT INTO mytable (time_column) VALUES ('%s')";
char sql_query[100];
sprintf(sql_query, insert_sql, formatted_time);
if (mysql_query(conn, sql_query)) {
fprintf(stderr, "%s\n", mysql_error(conn));
exit(1);
}
mysql_close(conn);
return 0;
}
```
其中,`strftime()` 函数可以将 `time_t` 类型的时间转换为格式化的字符串,`sprintf()` 函数可以将格式化的字符串插入到插入SQL语句中。当然,具体的SQL语句和字段名需要根据实际情况来修改。