SQLite 输出以在它们之间列出



如何相互显示输出?目前一切都在连续

bind pub "-|-" !sql pub:test:sql
proc pub:test:sql{ nick host handle channel arg } {
set name "%test%"
sqlite3 pre test.db
set result [pre eval {SELECT * FROM pre WHERE rlsname LIKE $name}]
if {$result == ""} {
putnow "PRIVMSG $channel :empty"
} else {
putnow "PRIVMSG #test :result $result"
set id [lindex [split $result] 0]
set outname [lindex [split $result] 1]
set time [lindex [split $result] 2]
putnow "PRIVMSG #test :$outname $time"
}
}

目前结果如下所示:

[09.02.20/21:00:43:243] <testbot> result 4 1.test.1 1581256802 160 2.test.2 1581262727
[09.02.20/21:00:43:243] <testbot> output 1.test.1 1581256802

这就是它应该的样子,彼此之间:

[09.02.20/21:00:43:243] <testbot> result 4 1.test.1 1581256802
[09.02.20/21:00:43:243] <testbot> result 160 2.test.2 1581262727

非常感谢您的帮助 问候

如果您希望一次处理一行选定的行,一个选项是对eval命令使用可选参数来指定变量名称和脚本。在eval命令的这种形式中,每一行都作为数组分配给变量并执行脚本。在您的情况下:

per eval {select * from PER ...} per_result {
puts "$per_result(somecolumn1) $per_result(somecolumn2)"
}

或类似的东西,其中数组索引是列名。

有关更多详细信息和示例,请参阅评估手册页。

相关内容

  • 没有找到相关文章

最新更新