Parkmanne/data.cpp

35 lines
1.4 KiB
C++
Raw Permalink Normal View History

2019-06-26 18:12:23 +00:00
#include "headers/data.h"
namespace data {
SQLite::Database start_db() {
2019-07-02 18:40:37 +00:00
/*
Opens the database, creates it if it can't find the file.
2019-07-23 14:17:55 +00:00
Then creates tables if they don't exist
2019-07-02 18:40:37 +00:00
*/
2019-07-08 20:57:09 +00:00
SQLite::Database db("test.db3", SQLite::OPEN_READWRITE | SQLite::OPEN_CREATE);
while (sodium_init() < 0) {
std::cout << "SODIUM NOT WORKING";
2019-07-02 18:40:37 +00:00
/*
This shouldn't be here, really, but I can't think of a better place
where it runs at least once. This seeds the random generator needed for
salts and other stuff, and needs to be run at least once when working
with any libsodium function. And since this definitely needs to be run at least once, why
not include it here? you can't (well, shouldn't be able to) login into anything if this
2019-07-23 14:17:55 +00:00
doesn't run, since you need to compare passwords to login, and then running the program is
as futile as not opening the db correctly.
2019-07-02 18:40:37 +00:00
*/
}
db.exec(
"create table if not exists Customer (id integer primary key, name "
2019-07-22 02:04:26 +00:00
"text, password text, vehicle int, telephone text, role int)");
db.exec(
"create table if not exists Park_spot (id integer primary key, taken "
2019-07-06 15:14:18 +00:00
"int, customer_id int, vehicle_type int)");
db.exec(
"create table if not exists Park_time (id integer primary key, "
"customer_id int, spot_id int, start int, end int, duration int)");
2019-06-26 18:12:23 +00:00
return db;
}
} // namespace data