嗨,我有一个名为 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;
Run Code Online (Sandbox Code Playgroud)
还尝试插入这些 sql 语句
select date 'Now' from rdb$database
select time 'now' from rdb$database
select timestamp 'NOW' from rdb$database
Run Code Online (Sandbox Code Playgroud)
但我无法生成表,也无法确定将 sql 语句放在哪里或要做什么才能获得今天自动获取日期的列
像这样?
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)
);
Run Code Online (Sandbox Code Playgroud)
如果您INSERT
进入该表,并省略Now_Column
(IE: it's NULL
) 的值,则将使用当前时间戳。
另外,永远不要使用CHAR
/VARCHAR
数据类型来保存日期(我怀疑您正在尝试使用您的Start_Date
列) - 使用正确的日期数据类型。
顺便说一下,未经测试 - 这是来自文档。