-2

在表中插入值包含 5 列有时插入 3 列,有时所有 5 列数据来自前端不是恒定的,取决于用户在前端插入吗?

如果 4 列值一列没有值,3 列和 2 列没有值,我们还需要在表中插入值吗?

4

3 回答 3

1

在插入语句中指定所有列。您向其传递空值的参数将作为空值存储在表中。无需根据哪些参数具有非空值来更改您的插入语句。

create or replace procedure insert_stuff(i_input1 in varchar2, i_input2 in 
varchar2... i_input10 in varchar2)is
    begin
    insert into my_table (col1, col2... col10) values(i_input1, i_input2... 
i_input10);
end;
于 2013-06-04T12:55:08.573 回答
0

以这种方式使用您的存储过程:

create or replace
FUNCTION testFunction
(
  field1 IN NUMBER DEFAULT NULL,
  field2 IN NUMBER DEFAULT NULL,
  field3 IN NUMBER DEFAULT NULL
)
RETURN NUMBER
AS
BEGIN
 // your insert query goes here.
END;

如果没有分配任何字段的值,则它将自动分配默认值,即 NULL。只需检查一下,我希望它会对您有所帮助。:)

于 2013-06-04T13:12:59.637 回答
0

如果您正在寻找查询,请使用语法:

insert into tablename(columnlist seperated by comma) values (values list seperated by comma).

例如:

insert into TableName(column1_name,column2_name) values(val1,val2);
于 2013-06-04T12:33:49.857 回答