gpt4 book ai didi

mysql - 使用 Ruby/MySQL 构建有效的 MySQL 查询

转载 作者:数据小太阳 更新时间:2023-10-29 08:25:40 26 4
gpt4 key购买 nike

如果我使用 Ruby/MSQL 库返回一个 Mysql::Result 类型的对象,我将如何构造一个循环遍历该对象的字符串并构造一个有效的 MySQL 查询?我无法弄清楚如何从下面的输出中删除最后一个逗号,以及如何将此输出传递回 query() 方法。

require 'mysql'
dbh = Mysql.real_connect("host", "user", "pass", "db")
res = dbh.query("SELECT name, category FROM animals")
printf "INSERT INTO animals (name, category) VALUES (\n"
res.each_hash do |row|
printf "('%s', '%s'),\n", row["name"], row["category"]
end
printf ")\n"

#Output
INSERT INTO animals (name, category) VALUES (
('snake', 'reptile'),
('frog', 'amphibian'),
('tuna', 'fish'),
('raccoon', 'mammal'),
)

最佳答案

values = []
res.each_row do |r|
values << "(#{r.map{|x| dbh.quote(x) }.join(", ")})"
end
query =<-SQL
INSERT INTO animals(name, category) VALUES
(#{values.join(",\n")}
)
SQL

puts query

关于mysql - 使用 Ruby/MySQL 构建有效的 MySQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1109993/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com