一、dual是什么
dual: Oracle提供的最小的工作表,只有一行一列,具有某些特殊作用。
二、dual表结构
Name | Type |
---|---|
DUMMY | Varchar(1) |
三、表内容
DUMMY |
---|
X |
在使用了sys用户dba权限,进去添加数据,再次查询仍然是一条数据。
四、特性
- 是Oracle提供的最小的表,不论进行任何操作(不要删除表),它都只有一条记录–‘X’。
- 是sys用户下的一张内部表,所用用户都可以使用dual来访问。
五、原理
select owner, object_name , object_type from dba_objects where object_name = 'DUAL';
使用以上sql语句查出 dual是属于sys的一个表,是以 PUBLIC SYNONYM来提供给其他用户使用
- OWNER:对象拥有者
- OBJECT_NAME:对象名字
- OBJECT_TYPE:对象类型,如table,view,index等
六、使用
在Oracle中语法规则严格,需要用虚拟表来构成Oracle的语法规则。
例如:
- 在Mysql中使用函数可以 select now();获取日期。
- 在Oracle中使用函数需要 select sysdate from dual; 来获取
mysql获取日期:
oracle中获取日期: