我已经“继承”了一些 Tcl 代码,虽然我学习了一些教程并且可以理解该语言,但我自己的 Tcl 构造缺乏一定的……技巧。
例如,我有这个代码:
puts "Column 'name': [ $queryRs getString name ]"
$queryRs
是 SQL 查询的结果集。该[ $queryRs getString name ]
构造从结果集中的当前行检索表列“名称”的内容。如果数据库字段为 NULL,puts
则不打印任何内容。
我想打印一个“默认”字符串,即如果[ $queryRs getString name ]
没有结果,我想用"--"
.
现在,我可以做这样的事情:
set nameVar "[ $queryRs getString name ]"
if { [ string length $nameVar ] == 0 } {
set nameVar "--"
}
puts "Column 'name': $nameVar"
但是必须有一个更紧凑的解决方案,可以内联完成,而不是添加四行和一个临时变量。请帮忙?