Python:无法连接 str 和 NoneType 对象

Cha*_*ins 5 python sql

sql = """
        INSERT INTO [SCHOOLINFO] 
        VALUES(
            '""" + self.accountNo + """', 
            '""" + self.altName + """',
            '""" + self.address1 + """',
            '""" + self.address2 + """',
            '""" + self.city + """',
            '""" + self.state + """',
            '""" + self.zipCode + """',
            '""" + self.phone1 + """',
            '""" + self.phone2 + """',
            '""" + self.fax + """',
            '""" + self.contactName + """',
            '""" + self.contactEmail + """',
            '""" + self.prize_id + """',
            '""" + self.shipping + """',
            '""" + self.chairTempPass + """',
            '""" + self.studentCount + """'
        )
    """;
Run Code Online (Sandbox Code Playgroud)

我有以下代码,Python 不断抛出错误,指出它无法连接字符串和非类型对象。问题是我已经验证了这里的每个变量实际上都是一个字符串并且不为空。今天我已经坚持了很长一段时间,任何帮助将不胜感激。

Han*_*Gay 4

请改用绑定变量。以下是在 Python 中使用数据库的规范:PEP 249:Python 数据库 API 规范 v2.0

更新:根据 的文档pymssql,您需要类似:

sql = """
    INSERT INTO [SCHOOLINFO] 
    VALUES(
        %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %d, %s, %s, %d
    )"""
cur.execute(sql, self.accountNo, self.altName, self.address1, self.address2, self.city, self.state, self.zipCode, self.phone1, self.phone2, self.fax, self.contactName, self.contactEmail, self.prize_id, self.shipping, self.chairTempPass, self.studentCount)
Run Code Online (Sandbox Code Playgroud)