SAP Cloud Platform Integration小ネタ
TIMESTAMP 型
SAP HANAでTIMESTAMP 型を定義する。
CREATE COLUMN TABLE "FOOBAR"( "TIMESTAMP" TIMESTAMP NOT NULL, "VARCHAR" VARCHAR(225) NOT NULL, "INTEGER" INTEGER, );
Odataサービスで中身を見るとこんな感じ
これって普通なんですかね。自分は初めて見た。epoch timeがそのまま入ってくるのね。
ISO 8601形式とか理解しないのか。
{ "DATETIME": "/Date(1606348800021)/", "VARCHAR": "VARCHAR", "INTEGER": 98 }
Integration Flowでは以下のようにして設定する
とりあえず現在時刻を設定
Apache CamelのSimple記法を理解すればいいらしい。
{ "DATETIME": "/Date(${bean:java.util.Date?method=getTime})/", "VARCHAR": "${property.varchar}", "INTEGER": ${property.integer} }
GENERATED BY DEFAULT AS IDENTITY
他のRDBだとserialとかAUTO_INCREMENT みたいなやつ
BY DEFAULT AS IDENTITY とか
ALWAYS AS IDENTITY で作成できる。
CREATE COLUMN TABLE "FOOBAR"( SERIAL_ID INTEGER PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY, );
でもOdataサービスで簡単に扱えないみたい。面倒くさい?
blogs.sap.com