14 from E5Gui import E5MessageBox |
14 from E5Gui import E5MessageBox |
15 |
15 |
16 from .SqlConnectionDialog import SqlConnectionDialog |
16 from .SqlConnectionDialog import SqlConnectionDialog |
17 from .Ui_SqlBrowserWidget import Ui_SqlBrowserWidget |
17 from .Ui_SqlBrowserWidget import Ui_SqlBrowserWidget |
18 |
18 |
|
19 |
19 class SqlBrowserWidget(QWidget, Ui_SqlBrowserWidget): |
20 class SqlBrowserWidget(QWidget, Ui_SqlBrowserWidget): |
20 """ |
21 """ |
21 Class implementing the SQL Browser widget. |
22 Class implementing the SQL Browser widget. |
22 |
23 |
23 @signal statusMessage(str) emitted to show a status message |
24 @signal statusMessage(str) emitted to show a status message |
24 """ |
25 """ |
25 statusMessage = pyqtSignal(str) |
26 statusMessage = pyqtSignal(str) |
26 |
27 |
27 cCount = 0 |
28 cCount = 0 |
28 |
29 |
29 def __init__(self, parent = None): |
30 def __init__(self, parent=None): |
30 """ |
31 """ |
31 Constructor |
32 Constructor |
32 |
33 |
33 @param parent reference to the parent widget (QWidget) |
34 @param parent reference to the parent widget (QWidget) |
34 """ |
35 """ |
122 @param port port number (integer) |
123 @param port port number (integer) |
123 """ |
124 """ |
124 err = QSqlError() |
125 err = QSqlError() |
125 |
126 |
126 self.__class__.cCount += 1 |
127 self.__class__.cCount += 1 |
127 db = QSqlDatabase.addDatabase(driver.upper(), |
128 db = QSqlDatabase.addDatabase(driver.upper(), |
128 "Browser{0:d}".format(self.__class__.cCount)) |
129 "Browser{0:d}".format(self.__class__.cCount)) |
129 db.setDatabaseName(dbName) |
130 db.setDatabaseName(dbName) |
130 db.setHostName(host) |
131 db.setHostName(host) |
131 db.setPort(port) |
132 db.setPort(port) |
132 if not db.open(user, password): |
133 if not db.open(user, password): |
196 |
197 |
197 for i in range(rec.count()): |
198 for i in range(rec.count()): |
198 fld = rec.field(i) |
199 fld = rec.field(i) |
199 model.setData(model.index(i, 0), fld.name()) |
200 model.setData(model.index(i, 0), fld.name()) |
200 if fld.typeID() == -1: |
201 if fld.typeID() == -1: |
201 model.setData(model.index(i, 1), |
202 model.setData(model.index(i, 1), |
202 QVariant.typeToName(fld.type())) |
203 QVariant.typeToName(fld.type())) |
203 else: |
204 else: |
204 model.setData(model.index(i, 1), "{0} ({1})".format( |
205 model.setData(model.index(i, 1), "{0} ({1})".format( |
205 QVariant.typeToName(fld.type()), |
206 QVariant.typeToName(fld.type()), |
206 fld.typeID())) |
207 fld.typeID())) |
207 if fld.length() < 0: |
208 if fld.length() < 0: |
208 model.setData(model.index(i, 2), "?") |
209 model.setData(model.index(i, 2), "?") |
209 else: |
210 else: |
210 model.setData(model.index(i, 2), fld.length()) |
211 model.setData(model.index(i, 2), fld.length()) |