使用以下样式将多行插入到表中时:
insert all into ghazal_current (GhazalName,Rating) values('Ajab Apna Haal Hota Jo Visaal-e-Yaar Hota',5) into ghazal_current (GhazalName,Rating) values('Apne Hothon Par Sajana Chahta Hun',4) into ghazal_current (GhazalName,Rating) values('Shaam Se Aankh Mein Nami Si Hai',Rating) values('Tumhe Yaad Ho Ke Na Yaad Ho',3) select 1 from dual;
声明从双重选择1是什么意思?这是为什么?
解决方法
DUAL是一个内置的表,因为它保证为
return only one row是有用的.这意味着DUAL可以用于获取诸如用户或sysdate之类的伪列,计算结果等. DUAL的所有者是SYS,但每个用户都可以访问它.文档中涵盖了DUAL.
Find out more.
在你的情况下,SELECT 1 FROM DUAL;将简单地返回1.您需要它,因为INSERT ALL语法需要一个SELECT子句,但是您不是从表中查询输入值.