Hej,
Mam taki problem z moim programem piszę w Qt w C++ program i chciałabym dodać do bazy danych elementy mam następujący kod i po wpisaniu danych do Line Edit i kliknięciu przycisku nic nie dodaje się do tabeli:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QSqlQuery>
#include <QSqlRecord>
#include <QSqlTableModel>
#include <QTableView>
#include <QListWidget>
#include <QStringList>
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_clicked()
{
baza= QSqlDatabase::addDatabase("QSQLITE");
baza.setDatabaseName("Magazyn.db");
if(baza.open())
{
ui->lineEdit->setText("Polaczono");
}
else{
ui->lineEdit->setText("Blad polaczenia");
}
}
/*void MainWindow::readRecordsToListWidget(){
QSqlQuery zapytanie(baza);
if (zapytanie.exec("SELECT * FROM Klienci")){
while(zapytanie.next()){
ui->records->addItem(new QListWidgetItem(zapytanie.value(0).toString() + "\"" +
zapytanie.value(1).toString() + "\"" + zapytanie.value(2).toString() + "\"" +
zapytanie.value(3).toString() + "\"" + zapytanie.value(4).toString() + "\""+
zapytanie.value(5).toString() + "\"" + zapytanie.value(6).toString() + "\""+
zapytanie.value(7).toString() + "\"" ));
}
}
}*/
/*void MainWindow::wypisywanie(){
QSqlTableModel *model=new QSqlTableModel;
model->setTable("Klienci");
model->setEditStrategy(QSqlTableModel::OnManualSubmit);
model->select();
model->setHeaderData(0,Qt::Horizontal,tr("Nazwa"));
model->setHeaderData(1,Qt::Horizontal,tr("Typ danych"));
QTableView *view=new QTableView;
view->setModel(model);
view->hideColumn(0);
view->show();
}*/
/*void MainWindow::on_pushButton_2_clicked()
{
QSqlQuery zapytanie;
int wiersze=0;
int kolumny= zapytanie.record().count();
ui->listWidget->setColumnCount(kolumny);
QString tekst =ui->textEdit->toPlainText();
bool sukces=zapytanie.exec(tekst);
if(sukces){
ui->lineEdit->setText("OK");
}
else{
ui->lineEdit->setText("Błedne zapytanie");
}
while(zapytanie.next()){
ui->tableWidget->insertRow(wiersze);
for(int i=0;i<kolumny;i++){
ui->tableWidget->setItem(wiersze,kolumny,new QTableWidgetItem("ID"));
}
ui->tableWidget->setRowCount(wiersze);
ui->tableWidget->item(wiersze,kolumny);
}
}*/
void MainWindow::on_pushButton_3_clicked()
{
QString nazwa_firmy=ui->lineEdit_2->text();
QString NIP= ui->lineEdit_3->text();
QString imie= ui->lineEdit_4->text();
QString nazwisko= ui->lineEdit_5->text();
QString ulica= ui->lineEdit_6->text();
QString kod_pocztowy= ui->lineEdit_7->text();
QString miasto= ui->lineEdit_8->text();
QSqlQuery zapytanie;
zapytanie.prepare("INSERT INTO Klienci (Nazwa_firmy, NIP, Imie, Nazwisko, Ulica, Kod_pocztowy, Miasto) VALUES (:Nazwa, :NIP, :Imie, :Nazwisko, :Ulica, :Kod, :Miasto);");
zapytanie.bindValue(":Nazwa", nazwa_firmy);
zapytanie.bindValue(":NIP", NIP);
zapytanie.bindValue(":Imie", imie);
zapytanie.bindValue(":Nazwisko", nazwisko);
zapytanie.bindValue(":Ulica", ulica);
zapytanie.bindValue(":Kod", kod_pocztowy);
zapytanie.bindValue(":Miasto", miasto);
zapytanie.exec() ;
}
/*QString t= "INSERT INTO Klienci (Nazwa_firmy, NIP, Imie, Nazwisko, Ulica, Kod_pocztowy, Miasto) VALUES ('";
t += nazwa_firmy;
t += "',";
t += NIP;
t +=",";
t += imie;
t +=",";
t += nazwisko;
t +=",";
t += ulica;
t += ",";
t += kod_pocztowy;
t += ",";
t += miasto;
t +=");";
QSqlQuery zapytanie;
zapytanie.exec(t);
}*/
void MainWindow::on_pushButton_4_clicked()
{
QString nazwa = ui->lineEdit_9->text();
QString ilosc = ui->lineEdit_10->text();
QString cena = ui->lineEdit_11->text();
QSqlQuery zapytanie;
zapytanie.prepare("INSERT INTO stan_magazynowy (nazwa_produktu, ilosc, cena) VALUES (:nazwa, :ilosc, :cena);");
zapytanie.addBindValue(nazwa);
zapytanie.addBindValue(ilosc);
zapytanie.addBindValue(cena);
zapytanie.exec();
}