我正在嘗試使用QT的QSql關係表模型。我是新的MySQL表關係,但仍然嘗試,並不能讓它在QT中正常工作。如何與QT QSqlRelationalTableModel中的mysql表關係?
我可以從MySQL得到結果:
create table stu(idd int auto_increment primary key,stu_name varchar(60),stu_age int);
create table stuInfo(idd int auto_increment primary key,stu_city varchar(60),stu_sub varchar(100), foreign key(id) references stu(id));
select stu.stu_name,stuInfo.stu_city from stu inner join stuInfo on stu.id=stuInfo.id;
從MySQL中檢索數據:
select stu.stu_name,stuInfo.stu_city from stu inner join stuInfo on stu.id=stuInfo.id;
在QT,我不能使它發揮作用。我很困惑與setRelation()和QSqlRelation()。我不完全理解不知道怎麼去執行在QT相同的查詢,我嘗試了各種方法,但有時我得到的空白數據,醜陋的頭,錯誤等
這裏是我的學習對碼:
model = new QSqlRelationalTableModel();
model->setTable("stu");
model->setRelation(0,QSqlRelation("stu","id","stu_name","stu_age"));
model->setRelation(0,QSqlRelation("stuInfo","id","stu_city","stu_sub"));
model->select();
ui->tableView->setModel(model);
我需要幫助來解決我的代碼請!
我寫了我的問題的更多細節,但stackoverflow給出了很多錯誤來解決。所以我也把它貼在pastebin上:http://pastebin.com/sX07Jknz。謝謝你幫助我! – user2715275