Beispiel #1
0
    query2 = QSqlQuery(db2)
    print "connection2:"
    query2.exec_("select * from student")
    while (query2.next()):
        print query2.value(0).toInt(), " ", query2.value(1).toString()

    # 以下是在例程17-4中添加的代码
    # 先判断该数据库驱动是否支持QuerySize特性,如果支持,则可以使用size()函数,
    # 如果不支持,那么就使用其他方法来获取总行数
    if (db2.driver().hasFeature(QSqlDriver.QuerySize)):
        print "has feature: query size"
        numRows = query2.size()
    else:
        print "no feature: query size"
        query2.last()
        numRows = query2.at() + 1

    print "row number: %s " % numRows

    # 指向索引为1的记录,即第二条记录
    query2.seek(1)
    # 返回当前索引值
    print "current index:  %s " % query2.at()
    # 获取当前行的记录
    record = query2.record()
    # 获取记录中“id”和“name”两个属性的值
    id = record.value("id").toInt()
    name = record.value("name").toString()
    print "id: %s name:  %s" % (id, name)
    # 获取索引为1的属性,即第二个属性
    field = record.field(1)