web-dev-qa-db-ja.com

今すぐ日付を取得するように列を設定する方法

こんにちは、datenowという名前のサンプルテーブルがあり、以下を使用してフレームロビンにテーブルを作成し、エントリが追加されたときに今日の日付を自動的に取得する列を作成します。

CREATE TABLE "DATENOW"
(
  ID Char(8) NOT NULL,
  "Start_Date" Char(10),
  "Client_Name" Varchar(30),
  BALANCE Integer,
  select cast('Now' as date) from rdb$database
  CONSTRAINT PK_datenow PRIMARY KEY (ID)
);

GRANT DELETE, INSERT, REFERENCES, SELECT, UPDATE
 ON "datenow" TO  SYSDBA WITH GRANT OPTION;

これらのSQLステートメントを挿入してみました

select date 'Now' from rdb$database
select time 'now' from rdb$database
select timestamp 'NOW' from rdb$database

しかし、私はテーブルを生成できず、SQLステートメントをどこに置くか、または今日の日付を取得する列を持つために何をすべきかを決定できません

2
Chunk Chunk

このような?

CREATE TABLE "DATENOW"
(
  ID Char(8) NOT NULL,
  "Start_Date" Char(10),
  "Client_Name" Varchar(30),
  BALANCE Integer,
  Now_Column TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  CONSTRAINT PK_datenow PRIMARY KEY (ID)
);

テーブルにINSERTを入力し、Now_Columnの値を省略した場合(IE:NULLです)、代わりに現在のタイムスタンプが使用されます。

また、CHAR/VARCHARデータ型を使用して日付を保持しないでください(Start_Date列を使用しようとしていると思います)-適切な日付データ型を使用してください。

ところで、テストされていません-これは documentationによるものです。

7
Philᵀᴹ