ひしだまの変更履歴

ひしだまHPの更新履歴。
主にTRPGリプレイの元ネタ集、プログラミング技術メモと自作ソフト、好きなゲームや音楽です。

Tsurugiのcreate table

2023-12-15 00:00:00 | PG(RDBMS)

Tsurugi Advent Calendar 2023の15日目です。

テーブルを作成するcreate table文は、Tsurugiではまだ未対応のデータ型があります。binaryとかBLOBとか。

char/varcharは対応していますが、現状(Tsurugi 1.0.0-BETA2)では、指定する桁数はバイト数であって文字数ではないことに注意が必要です。
char/varcharにinsert/updateするときは、UTF-8に変換されて入れられます。

また、今はchar/varcharにヌル文字(文字コード0)を含めることが出来ません。
Tsurugi 1.0.0-BETA1では、ヌル文字が含まれた文字列のinsertは出来ますが、select時にERR_DATA_CORRUPTIONが発生します。
Tsurugi 1.0.0-BETA2では、ヌル文字が含まれた文字列をinsertしようとするとINVALID_RUNTIME_VALUE_EXCEPTIONが発生します。
embulk-output-tsurugidb 0.1.3では、ヌル文字が含まれているレコードはinsertをスキップするようにしました。

それと、decimal(「decimal(4,1)みたいな」)や dateも使うことが出来ますが、リテラルが対応していません。
つまり、Tsurugi SQLコンソール(tgsql)からinsert文で値を入れることが出来ません^^;
decimalについては、castで代用することが出来ますが。
(decimalもdateも、Iceaxeからバインド変数を使って入れることは可能です)


ところで、Tsurugi 1.0.0-BETA2では、create table if not existsが使えるようになりました。
テーブルが存在しないときだけcreate tableを実行します。(テーブルが存在しているときは何もしません(エラーにもなりません))


コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« Tsurugi 1.0.0-BETA2の構成定... | トップ | Tsurugiのdrop table »
最新の画像もっと見る

コメントを投稿

PG(RDBMS)」カテゴリの最新記事