· 7 years ago · Sep 18, 2018, 12:58 AM
1How to convert integer to string using sqlite3 c
2#include <iostream>
3 using namespace std;
4 #include "sqlite3.h"
5 #include<string.h>
6 #include <sstream>
7 #define STRING_MAX 32
8
9 typedef struct metadata_t
10 {
11 char session_username[256];
12 int user_id[256];
13 int session_id[256];
14 char buffer[256];
15 }metadata_t;
16
17 void insertdata1(metadata_t *data);
18
19 int main (int argc, const char * argv[])
20 {
21
22 struct metadata_t *data;
23 cin >> *data->user_id;
24 cin >> data->session_username;
25 cin >> *data->session_id;
26 cin >> data->buffer;
27
28
29 insertdata1(data);
30
31 }
32
33 void insertdata1(metadata_t *data)
34 {
35
36 // char *buff1,*buff2;
37 sqlite3 *db;
38 sqlite3_open("test1.db", & db);
39 string createQuery = "CREATE TABLE IF NOT EXISTS items (user_id INTEGER PRIMARY KEY, session_username TEXT,Session_id INTEGER,buffer TEXT,));";
40 sqlite3_stmt *createStmt;
41 cout << "Creating Table Statement" << endl;
42 sqlite3_prepare(db, createQuery.c_str(), createQuery.size(), &createStmt, NULL);
43 cout << "Stepping Table Statement" << endl;
44 if (sqlite3_step(createStmt) != SQLITE_DONE) cout << "Didn't Create Table!" << endl;
45
46
47 //itoa(*data->userid,buff1,10); // not work
48 //itoa(*data->userphone,buff2,10);// Integer to String Conversion
49
50 /* std::string ss;
51 ss << *data->user_id;
52 ss << *data->session_id;
53 std::string user_Id = ss.str();
54 std::string session_Id = ss.str(); */ // not working
55 char *a="(";
56 char *d=")";
57 char *b="'";
58 char *c=",";
59 char str1[1000];
60 char * str2 = "";
61 char * g = ";";
62 strcpy(str1, "INSERT INTO items (user_id,session_username,session_id,buffer)VALUES");
63
64 strcat(str1,a);
65
66 strcat(str1,b);
67 strcat(str1,data->user_id);
68 strcat(str1,b);
69 strcat(str1,c);
70 strcat(str1,b);
71 strcat(str1,data->session_username);
72 strcat(str1,b);
73 strcat(str1,c);
74 strcat(str1,b);
75 strcat(str1,data->session_id);
76 strcat(str1,b);
77 strcat(str1,c);
78 strcat(str1,b);
79 strcat(str1,data->buffer);
80 strcat(str1,b);
81 strcat(str1,d);
82 strcat(str1,g);
83
84 std::string insertQuery = str1; // WORKS!
85 sqlite3_stmt *insertStmt;
86 cout << "Creating Insert Statement" << endl;
87 sqlite3_prepare(db, insertQuery.c_str(), insertQuery.size(), &insertStmt, NULL);
88 cout << "Stepping Insert Statement" << endl;
89 if (sqlite3_step(insertStmt) != SQLITE_DONE) cout << "Didn't Insert Item!" << endl;
90
91
92
93
94 }**
95
96std::ostringstream str1;
97
98str1 << "INSERT INTO items (user_id,session_username,session_id,buffer)VALUES"
99 << a
100 << b // and so on
101 << g;
102
103const std::string insertQuery = str1.str();
104
105struct metadata_t *data;
106
107cin >> *data->user_id;
108
109metadata_t data;
110
111insertdata1(&data);
112
113struct metadata_t
114{
115 std::string session_username;
116 int user_id[256]; // Did you really mean an array of int here ?
117 int session_id[256];
118 std::string buffer;
119};