Sqlite:
Using Python's sqlite3:
Note that the commit method is slightly different from QT
ImportSqlite3classDBManager ():def __init__(self): self.db= Sqlite3.connect ("core.db") Self.query=self.db.cursor () ... self._inittable ( ) ...## Create table["Webpower"] if not exists def_inittable (self): Self.query.execute ("CREATE table if not exists webpower (ID integer primary key,name text,state integer)") Self.db.commit () ...
Using Qtsql:
1 fromPyqt4.qtsqlImportQsqlquery,qsqldatabase2 3 classDBManager ():4 def __init__(self):5Self.db = Qsqldatabase.adddatabase ("Qsqlite")#Select database Type6Self.db.setDatabaseName ("core.db")#Set database name7Self.db.open ()#connect to or CREATE database8Self.query = Qsqlquery ()#SQL Handler9 ... Ten One...
Mysql:
fromPyqt4.qtsqlImportQsqlquery,qsqldatabaseclassDBManager ():def __init__(self): self.db= Qsqldatabase.adddatabase ("Qmysql")#Select database TypeSelf.db.setHostName ("localhost")#Set AddressSelf.db.setUserName ("Root");#Set user nameSelf.db.setPassword ("Root");#Set user pwdSelf._trytoconnect ()#Check ConnectionSelf.query =qsqlquery ()## CREATE DATABASESELF.QUERY.EXEC_ ("CREATE DATABASE test1") ## Choose DatabaseSelf.db.setDatabaseName ("test1") Self._trytoconnect ()#also can be:self.query.exec_ ("Use Test1") ## Connect and check Connection state def_trytoconnect (self):if(Self.db.open ()):Print "Success" Else: Print "Failed to connect to MySQL" ...
Common sql:
--CREATE TABLECreate Table if not existsTest2 (IDinteger Primary Key, TimeReal, PowersReal);--Clear TableDelete fromtest2;--InsertInsert intoT1Values(1,0.1,0.2);--SelectSelect * fromtest1--Delete TableDrop TableTest4
PYTHON+PYQT Database Basic Operations