codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
from PyQt4.QtSql import * from PyQt4.QtCore import * from PyQt4.QtGui import * import sys def createConnection(driverType, databaseName, hostName=None, userName=None, password=None): db = QSqlDatabase.addDatabase(driverType); db.setDatabaseName(databaseName) db.setHostName(hostName); db.setUserName(userName); db.setPassword(password) if (db.open() == False): QMessageBox.critical(None, "Database Error", db.lastError().text()) sys.exit(1) return db if __name__ == '__main__': app = QApplication(sys.argv) con = createConnection('QSQLITE', "testdatabase.db") qry = QSqlQuery() # qry.setForwardOnly(True) qry.exec_("CREATE TABLE IF NOT EXISTS names (id INTEGER UNIQUE PRIMARY KEY, firstname VARCHAR(30), lastname VARCHAR(30))"); qry.exec_("INSERT INTO names (id, firstname, lastname) VALUES (1, 'John', 'Doe')"); qry.exec_("INSERT INTO names (id, firstname, lastname) VALUES (2, 'Jane', 'Doe')"); qry.exec_("INSERT INTO names (id, firstname, lastname) VALUES (3, 'James', 'Doe')"); qry.exec_("INSERT INTO names (id, firstname, lastname) VALUES (4, 'Judy', 'Doe')"); qry.exec_("INSERT INTO names (id, firstname, lastname) VALUES (5, 'Richard', 'Roe')"); qry.exec_("INSERT INTO names (id, firstname, lastname) VALUES (6, 'Jane', 'Roe')"); qry.exec_("INSERT INTO names (id, firstname, lastname) VALUES (7, 'John', 'Noakes')"); qry.exec_("INSERT INTO names (id, firstname, lastname) VALUES (8, 'Donna', 'Doe')"); qry.exec_("INSERT INTO names (id, firstname, lastname) VALUES (9, 'Ralph', 'Roe')"); qry.exec_("CREATE TABLE IF NOT EXISTS salaries (id INTEGER UNIQUE PRIMARY KEY, annual INTEGER)"); qry.exec_("INSERT INTO salaries (id, annual) VALUES (1, 1000)") qry.exec_("INSERT INTO salaries (id, annual) VALUES (2, 900)"); qry.exec_("INSERT INTO salaries (id, annual) VALUES (3, 900)"); qry.exec_("INSERT INTO salaries (id, annual) VALUES (5, 1100)"); qry.exec_("INSERT INTO salaries (id, annual) VALUES (6, 1000)"); qry.exec_("INSERT INTO salaries (id, annual) VALUES (8, 1200)"); qry.exec_("INSERT INTO salaries (id, annual) VALUES (9, 1200)"); model = QSqlRelationalTableModel() model.setTable("names" ) model.setRelation(0, QSqlRelation( "salaries", "id", "annual" ) ) model.setEditStrategy(QSqlTableModel.OnFieldChange) model.select() print(model.editStrategy()) view = QTableView(); view.setModel(model ) view.show(); sys.exit(app.exec_())
Private
[
?
]
Run code
Submit