Python 使用QtSql、QSqldatabase创建表时如何插入值

Python 使用QtSql、QSqldatabase创建表时如何插入值,python,python-3.x,sqlite,pyqt5,qtsql,Python,Python 3.x,Sqlite,Pyqt5,Qtsql,我正在尝试创建表,并在创建表时插入一些数据。它可以创建表,但不能在表上插入数据。如果不存在值,如何插入。 使用QtSql,QsQlQuery。 下面是我的示例代码 from PyQt5 import QtWidgets, QtSql queries = ( """ CREATE TABLE IF NOT EXISTS company( Company_Name TEXT, Address TEXT, phone TEXT )&

我正在尝试创建表,并在创建表时插入一些数据。它可以创建表,但不能在表上插入数据。如果不存在值,如何插入。 使用QtSql,QsQlQuery。 下面是我的示例代码

from PyQt5 import QtWidgets, QtSql

queries = (
    """
CREATE TABLE IF NOT EXISTS company(
    Company_Name TEXT, 
    Address TEXT, 
    phone TEXT

)""",

    """
CREATE TABLE IF NOT EXISTS employees(
    employee TEXT, 
    Address TEXT, 
    phone TEXT

)""",

    """
INSERT or IGNORE into company (
(Company_Name, Address, phone) VALUES ("New Company", "Location", "123"
)"""
)

def create_connection():
    db = QtSql.QSqlDatabase.addDatabase("QSQLITE")
    db.setDatabaseName("data_base.db")
    if not db.open():
        print(db.lastError().text())
        return False
    return True


class MainWindow(QtWidgets.QMainWindow):
    def __init__(self, parent=None):
        super().__init__(parent)

        print("OKAY")


if __name__ == "__main__":
    import sys

    app = QtWidgets.QApplication(sys.argv)
    if not create_connection():
        sys.exit(-1)
    for query_str in queries:
        query = QtSql.QSqlQuery(query_str)
        if not query.exec_():
            print(query.lastError().text())
    w = MainWindow()
    w.show()
    sys.exit(app.exec_())
获取:没有查询无法获取行