gpt4 book ai didi

mysql - postgresql 插入一个 null 转换为默认值?

转载 作者:行者123 更新时间:2023-11-29 10:16:59 25 4
gpt4 key购买 nike

MySQL 有一些功能,但 postgresql 没有。1.创建表并给列默认值2.向表中插入空值。在MySQL中它将插入默认值;在postgresql中它将插入空值;我怎样才能让 postgresql 做像 MySQL 一样的事情。我在更改DBMS期间发现了这个问题。我的应用程序是java代码。ORM 是 Hibernate 5.1.0。我更改了 DBMS,然后很多默认列都不起作用。

MySQL sql

drop table table1;
CREATE TABLE table1
(
column_1 int PRIMARY KEY AUTO_INCREMENT,
column_2 timestamp DEFAULT current_timestamp
);
insert into table1(column_2) values(null);
select * from table1;

结果

| column_1 | column_2            |
+----------+---------------------+
| 1 | 2018-04-24 10:00:18 |

pgsql

drop table table2;
CREATE TABLE table2
(
column_1 serial PRIMARY KEY,
column_2 timestamp DEFAULT current_timestamp
);
insert into table2(column_2) values (null);
select * from table2;

结果

 column_1 | column_2 
----------+----------
1 |

最佳答案

我认为如果你想在插入时获得默认值我建议你3种方法:

  1. 请勿将其放入您的查询中。
  2. 使用关键字DEFAULT AS 插入table2(column_2)值(DEFAULT);
  3. 编写触发器并在插入时处理数据。

希望我的回答对您有帮助。

关于mysql - postgresql 插入一个 null 转换为默认值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49992531/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com