私はいくつかの Tcl コードを「継承」しました。いくつかのチュートリアルに取り組み、言語を理解することはできましたが、私自身の Tcl コンストラクトには特定の... フィネスが欠けています。
たとえば、次のコードがあります。
puts "Column 'name': [ $queryRs getString name ]"
$queryRs
SQL クエリの結果セットです。この[ $queryRs getString name ]
構造は、結果セットの現在の行からテーブル列 "name" の内容を取得します。データベース フィールドが NULL の場合、 はputs
何も出力しません。
代わりに「デフォルト」の文字列を出力したいと思います。つまり、[ $queryRs getString name ]
結果が何もない場合は、に置き換えたいと思い"--"
ます。
今、私は次のようなことができます:
set nameVar "[ $queryRs getString name ]"
if { [ string length $nameVar ] == 0 } {
set nameVar "--"
}
puts "Column 'name': $nameVar"
しかし、4 行と一時変数を追加する代わりにインラインで実行できる、よりコンパクトなソリューションが必要です。助けてください?