【发布时间】:2019-06-16 07:18:15
【问题描述】:
我实在想不通 - 输出的 SQL 查询无效
key="test"
payload=$(gzip -ckqd ./temp.json.gz | jq -c . | sed 's/"/\\"/g')
printf 'INSERT INTO my_table VALUES ("%s", "%s")' "$key" "$payload" | sqlite3 ./temp.db
$payload 变量显然是一个 json 字符串(可以有单引号和双引号等)
【问题讨论】:
-
SQL 使用单引号作为开头的字符串。
-
无论如何,我认为你最好的方法是编写一个简单的 perl 或 python 脚本,它接受三个参数 - 数据库、密钥和 json,并使用普通参数绑定方法进行插入,以避免引号、逗号等的所有问题。