· 6 years ago · Jul 04, 2019, 09:16 PM
1#include <iostream>
2#include <stdio.h>
3#include "sqlite3.h"
4using namespace std;
5
6const char* SQL = "CREATE TABLE IF NOT EXISTS foo(a,b,c); INSERT INTO FOO VALUES(1,2,3); INSERT INTO FOO SELECT * FROM FOO;";
7
8int main(int argc, char **argv){
9cout << "begining" << endl;
10sqlite3 *db = 0; // хэндл объекта соединение к БД
11char *err = 0;
12
13// открываем соединение
14if( sqlite3_open("my_db.db", &db) )
15fprintf(stderr, "Ошибка открытия/создания БД: %sn", sqlite3_errmsg(db));
16// выполняем SQL
17else if (sqlite3_exec(db, SQL, 0, 0, &err))
18{
19fprintf(stderr, "Ошибка SQL: %sn", err);
20sqlite3_free(err);
21}
22// закрываем соединение
23sqlite3_close(db);
24cout << "end" << endl;
25return 0;
26}
27
28g++ -o start_cpp start_cpp.cpp sqlite3.c
29
30sqlite3.c:21495:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
31sqlite3.c: In function 'void strftimeFunc(sqlite3_context*, int, sqlite3_value**)':
32sqlite3.c:21929:29: error: invalid conversion from 'void*' to 'char*' [-fpermissive]
33 z = sqlite3DbMallocRawNN(db, (int)n);
34
35gcc -o start start.c sqlite3.c