Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void MainWindow::on_actionAdd_train_triggered()
- {
- Dialog e;
- if(e.exec())
- {
- if(Add(e.Cities))
- {
- QSqlDatabase db_1 = QSqlDatabase::addDatabase("QSQLITE");
- db_1.setDatabaseName("C:\\SQLiteDatabaseBrowserPortable\\Data\\cities.db");
- db_1.open();
- QSqlQuery r;
- if(r.exec("create table "+e.train_name+" "
- "(id integer primary key, "
- "city varchar(30), "
- "arrival_time varchar(30), "
- "depart_time varchar(30), "
- "distance_to_previous varchar(5),"
- "population varchar(8))"
- ))//таблиця міст через які йде поїзд
- r.clear();
- for(int i = 0; i<e.Cities.size();i++)// train stops initialisation
- {
- if(i == 0)
- {
- QString num = "0";
- r.exec("INSERT INTO " +e.train_name+"(city,arrival_time,depart_time,distance_to_previous,population)"
- +"values('"+e.Cities[i].city_+"','"+e.Cities[i].depart_+"','"+e.Cities[i].leave_+"','"
- +num+"','"+e.get_population(e.Cities[i].city_)+"')");
- }
- else
- {
- QString number_ = QString::number(e.get_distance_to_previous(e.Cities,i));
- r.exec("INSERT INTO " +e.train_name+"(city,arrival_time,depart_time,distance_to_previous,population)"
- +"values('"+e.Cities[i].city_+"','"+e.Cities[i].depart_+"','"+e.Cities[i].leave_+"','"
- +number_+"','"+e.get_population(e.Cities[i].city_)+"')");
- }
- }
- //db_.close();
- QSqlQuery r_2;
- vector<city>Cities_;
- r_2.exec("create table "+e.train_name+"_people"+" "
- "(id integer primary key, "
- "depart_city varchar(30), "
- "arrival_city varchar(30), "
- "firstname varchar(30), "
- "lastname varchar(30), "
- "bot varchar(10),"
- "vagon integer,"
- "place integer,"
- "privileges varchar(5), "
- "distance integer, "
- "ticket_price integer)");
- r_2.clear();
- for(int i = 0;i<e.Cities.size();i++)
- {
- r_2.exec("SELECT * FROM "+e.train_name+" WHERE city = '" +e.Cities[i].city_+ "'");
- while(r_2.next())
- {
- QString city__ = r_2.value(1).toString();
- QString arrival_time__ = r_2.value(2).toString();
- QString depart_time__ = r_2.value(3).toString();
- QString distance_to_previous__ = r_2.value(4).toString();
- QString population__ = r_2.value(5).toString();
- city C(city__,arrival_time__,depart_time__,distance_to_previous__.toFloat(),population__.toInt(),i);
- Cities_.push_back(C);
- }
- }
- r_2.clear();
- train T(0,1000,e.train_name,Cities_);
- T.set_appropriate_placess_values();
- T.random_passanger();
- T.set_cost();
- QSqlQuery r_3;
- QSqlDatabase db_2 = QSqlDatabase::addDatabase("QSQLITE");
- db_2.setDatabaseName("C:\\SQLiteDatabaseBrowserPortable\\Data\\cities.db");
- db_2.open();
- if(db_2.isOpen())
- ui->textBrowser_2->append("ERQ");
- QString bot = "bot";
- QString privilages = "No";
- QString dataB = e.train_name+"_people";
- //r_3.exec("SELECT name FROM QSQLITE WHERE type='table' AND name='"+dataB+"'");
- // ui->textBrowser_2->append(r_3.value(0).toString());
- if( r_3.prepare("INSERT INTO "+dataB+" (depart_city,arrival_city,firstname,lastname,bot,vagon,place,privileges,distance,ticket_price)"
- "VALUES (?,?,?,?,?,?,?,?,?,?)"))// return false
- ui->lineEdit->setText("TTT");
- else
- ui->textBrowser_2->append(r_3.lastError().text()+" "+QString::number(r_3.lastError().number()));
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement