Python+PyQt 数据库基本操作
Sqlite:
使用Python的sqlite3:
需要注意下commit方式与qt稍有不同
import sqlite3 class DBManager(): 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() ...
使用QtSql:
1 from PyQt4.QtSql import QSqlQuery,QSqlDatabase 2 3 class DBManager(): 4 def __init__(self): 5 self.db = QSqlDatabase.addDatabase("QSQLITE") #select database type 6 self.db.setDatabaseName("core.db") # set database name 7 self.db.open() #connect to or create database 8 self.query = QSqlQuery() #sql handler 9 ... 10 11 ...
Mysql:
from PyQt4.QtSql import QSqlQuery,QSqlDatabase class DBManager(): def __init__(self): self.db = QSqlDatabase.addDatabase("QMYSQL") #select database type self.db.setHostName("localhost") #set address self.db.setUserName("root"); #set user name self.db.setPassword("root"); #set user pwd self._trytoConnect() #check connection self.query = QSqlQuery() ## create database self.query.exec_("CREATE DATABASE test1") ## Choose database self.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" ...
常用SQL:
--create table create table if not exists test2 (id integer primary key,time real,powers real); --clear table delete from test2; --insert insert into t1 values(1,0.1,0.2); --select select * from test1 --delete table drop table test4
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。