Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何转换日期+;时间戳python_Python_Mysql_Python 3.x_Parsing_Timestamp - Fatal编程技术网

如何转换日期+;时间戳python

如何转换日期+;时间戳python,python,mysql,python-3.x,parsing,timestamp,Python,Mysql,Python 3.x,Parsing,Timestamp,我正在尝试将数据发送到数据库中。我是从JSON中的MQTT获得它的。我解析了它并试图将其插入数据库。我认为问题可能是语法分析不好 在数据库中,我有一个类型(timestamp,int) 下面是一个代码: def on_message(client, userdataa, msg): print(msg.payload.decode("utf-8")) json_data = json.loads(msg.payload.decode("utf-8&

我正在尝试将数据发送到数据库中。我是从JSON中的MQTT获得它的。我解析了它并试图将其插入数据库。我认为问题可能是语法分析不好

在数据库中,我有一个类型(timestamp,int) 下面是一个代码:


def on_message(client, userdataa, msg):
    print(msg.payload.decode("utf-8"))
    json_data = json.loads(msg.payload.decode("utf-8"))
    time = "";
    value = "";
    table = "";
    for k in json_data["readings"]:
        table = k["name"]
        a = k["value"].split(" ")
        time = a[1] + " " + a[2].replace('"','')
        value = a[0].replace('"','')
    to_database(time, value, table)

def to_database(time, value, table):
    cursor = connection.cursor()
    print(cursor)
    try:
        cursor.execute("""INSERT into %s (date,%s) values(%s,%s)""",(table,table,time,int(value)))
        connection.commit()
        print("OK")
    except:
        connection.rollback()


那么,我如何解析时间到时间戳呢?

在插入之前,
time
的值是多少?它应该类似于
'2021-04-11 13:00'
,如果应该具有格式“yyyy-mm-dd HH:mm”,MySQL将其转换为时间戳。格式为2021-04-11 12:43:01-与您编写的格式几乎相同,但使用毫秒。您的意思是秒,而不是毫秒。。。但您得到的确切错误消息是什么?因为问题不在于时间戳。没有错误,只需继续执行Exception。。也许执行命令不好?您不能在
execute
调用中提供该表作为输入,这就是问题所在,标识符不能与参数替换一起使用,而您正在这样做