Oracle insert语句如何工作

时间:2018-08-15 08:10:57

标签: oracle hibernate spring-mvc

假设我有一个tableX,其中相应地包含以下各列-
id | name | description | contact_no

现在,如果我执行插入操作
insert into tableX(id, contact_no, name, description) value(?,?,?,?)

[请注意以下命令的顺序]

oracle将以哪种顺序插入每个列值?
i)根据insert声明
ii)根据表X中的列顺序
iii)或使用oracle按字母[id, contact_no, description, name]的顺序对列进行排序,并将其相应地放置。

2 个答案:

答案 0 :(得分:5)

它将基于列列表放置值:

insert into tableX(id, contact_no, name, description)
                -- 1st 2nd         3rd   4th
values(1st, 2nd, 3rd, 4th);

如果省略列列表,则将获得"blind insert"(常见反模式)。

答案 1 :(得分:0)

根据您在插入中从左到右指定的列

insert into tableX(id, contact_no, name, description) value(1,2,3,4)