Oracle insert ignore 插入数据时忽略重复主键或多个字段

关键语句是一条看似注释的东西

/*+ IGNORE_ROW_ON_DUPKEY_INDEX(table_name(id)) */
* 这里table_name是你的表名

一、忽略主键(这里假设id为主键)

insert /*+ IGNORE_ROW_ON_DUPKEY_INDEX(table_name(id)) */ into table_name(
id,
column_2,
column_3
)
VALUES
	(
	772768211081887744,
	'1604110389',
	'6212142500000000151'
	)

二、忽略多个字段插入(这里假设id为主键)

如果表中某个字段是唯一或某几个字段组合是唯一的话,可以为他们创建索引,然后对此索引进行忽略存在值插入

创建索引:create unique index index_name on table_name(column_2,column_3)

忽略存在值插入:

insert /*+ IGNORE_ROW_ON_DUPKEY_INDEX(table_name(column_2,column_3)) */ into table_name(
id,
column_2,
column_3,
column_4,
column_5
)
VALUES
	(
	772768211081887744,
	'1604110389',
	'6212142500000000151',
	1234123,
	'jaja'
	)

你可能感兴趣的:(java,开发,oracle)