罗列特定的列名称

您不必为每列都指定值。相反,您可在表名称之后罗列列名称,然后仅为您命名了的那些列提供值。下列示例展示将新行插入到 stock 表内的语句:
INSERT INTO stock (stock_num,  description,  unit_price,  manu_code)
          VALUES (115,  'tyre pump ',  114,  'SHM');
仅提供库存编号、描述、单价和制造商代码的数据。数据库服务器为其余列提供下列值:
  • 它为未列出的序列列生成一个序列数值。
  • 它为与它相关联的有特定缺省值的列生成一个缺省值。
  • 它为任何允许空值的任何列生成 NULL 值,但它不为指定 NULL 作为缺省值的任何列指定缺省值。

    您必须为未指定缺省值或不允许 NULL 值的所有列罗列并提供值。

您可以任何顺序罗列列,只要这些列的值也以相同的顺序罗列。要获取关于如何为列指定空值或缺省值的信息,请参阅 GBase 8s 数据库设计和实现指南

在执行前一示例中的 INSERT 语句之后,将下列新行插入到 stock 表内:
stock_num manu_code  description  unit_price unit unit_descr
          
          115       SHM  tyre pump           114

unitunit_descr 都为空,表示在那两列中存在 NULL 值。由于 unit 列允许 NULL 值,因此不知道 114 美元可购买的轮胎充气泵(tire pump)的数目。当然,如果为这一列指定了 box 缺省值,则计量单位将为 box。在任何情况下,当您将值插入到表的特定的列内时,请注意那一行需要什么数据。