简体   繁体   English

PyQt4和SQLITE数据检索

[英]PyQt4 & SQLITE data retrievement

This is my sql initialization. 这是我的sql初始化。

self.data = QtSql.QSqlDatabase.addDatabase("QSQLITE")
self.data.setDatabaseName('new_ship')
self.data.open()
self.sql_model = QtSql.QSqlTableModel()
self.sql_model.setEditStrategy(QtSql.QSqlTableModel.OnManualSubmit)
self.first_date= '2015-01-01'
self.second_date = '2015-01-01'
self.sql_model.setTable('new_ship')
query = QtSql.QSqlQuery("SELECT submit_date FROM new_ship WHERE submit_date BETWEEN "+"'"+self.first_date+"'"+' AND '+"'"+self.second_date+"'")
self.sql_model.setQuery(query)
self.sql_model.select()
self.tableView.setModel(self.sql_model)
self.tableView.show()
self.data.close()

i would like to get the date range from my db according to my submitted query. 我想根据我提交的查询从我的数据库中获取日期范围。 The result that i keep getting is : please visit the list below ( i cant post imgs) 我一直得到的结果是:请访问下面的列表(我无法发布imgs)

http://postimg.org/image/s2iod1vs1/ http://postimg.org/image/s2iod1vs1/

while my desired result would be only : 2015-01-01 而我想要的结果是:2015-01-01

I check the query using my sqlite browser and everything looks fine : 我使用sqlite浏览器检查查询,一切看起来都很好:

Help is needed :) 需要帮助:)

Use the format operator on your SQL query string: 在SQL查询字符串上使用格式运算符:

query = QtSql.QSqlQuery("SELECT submit_date FROM new_ship WHERE submit_date 
BETWEEN '{0}' AND '{1}'".format(self.first_date, self.second_date))

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM