73 lines
2.3 KiB
C++
73 lines
2.3 KiB
C++
#include <iostream>
|
|
#include <src/sql/SqlQuery.h>
|
|
#include <src/sql/sqlite/SqliteSQL.h>
|
|
#include <src/sql/mysql/MySQL.h>
|
|
|
|
#include <cppconn/exception.h>
|
|
#include <cppconn/statement.h>
|
|
#include <cppconn/prepared_statement.h>
|
|
#include <cppconn/resultset.h>
|
|
#include <cppconn/metadata.h>
|
|
#include <cppconn/driver.h>
|
|
|
|
|
|
using namespace std;
|
|
using namespace sql;
|
|
|
|
void testSql(){
|
|
sql::sqlite::SqliteManager handle;
|
|
auto res = handle.connect("test.sqlite");
|
|
if(!res) {
|
|
cerr << "Failed to open file. error: " << res << endl;
|
|
return 0;
|
|
}
|
|
|
|
res = sql::command(&handle, "CREATE TABLE IF NOT EXISTS `test` (`key` TEXT, `value` TEXT);").execute();
|
|
if(!res) {
|
|
cerr << "Failed to execute command. error: " << res << endl;
|
|
return 0;
|
|
}
|
|
|
|
res = sql::command(&handle, "SELECT * FROM `sqlite_master` WHERE `name` = :name", variable{":name", "test"}).query([](void*, int length, string* values, string* names) {
|
|
cout << " | ";
|
|
for(int i = 0; i < length; i++)
|
|
cout << values[i] << " | ";
|
|
cout << endl;
|
|
return 0;
|
|
}, (void*) nullptr);
|
|
|
|
res = sql::command(&handle, "SELECT * FROM `sqlite_master` WHERE `name` = :name", variable{":name", "test"}).query<void>([](void*, int length, string* values, string* names) {
|
|
cout << " | ";
|
|
for(int i = 0; i < length; i++)
|
|
cout << values[i] << " | ";
|
|
cout << endl;
|
|
return 0;
|
|
}, nullptr);
|
|
|
|
res = sql::command(&handle, "SELECT * FROM `sqlite_master` WHERE `name` = :name", variable{":name", "test"}).query<int>([](void*, int length, string* values, string* names) {
|
|
cout << " | ";
|
|
for(int i = 0; i < length; i++)
|
|
cout << values[i] << " | ";
|
|
cout << endl;
|
|
return 0;
|
|
}, (int*) nullptr);
|
|
|
|
cout << "Res: " << res << endl;
|
|
}
|
|
|
|
int main(int, char**) {
|
|
sql::Driver* driver = get_driver_instance();
|
|
driver->connect(SQLString("tcp://127.0.0.1:3306"), SQLString("root"), SQLString("markus"));
|
|
std::shared_ptr<sql::Connection> con(driver->connect("", "root", "markus"));
|
|
if(!con->isValid()) {
|
|
cerr << "Invalid connection!" << endl;
|
|
}
|
|
con->setSchema("test");
|
|
//std::shared_ptr<sql::Statement> stmt(con->createStatement());
|
|
/*
|
|
sql::mysql::MySQLManager manager;
|
|
manager.connect("hellop");
|
|
*/
|
|
|
|
return 0;
|
|
} |