oracle和mssql中语句的区别

来源:互联网 发布:java 网页爬虫框架 编辑:程序博客网 时间:2024/05/17 05:53
1.desc 表名 :显示数据表的结构
2.as 省略了as 
比如 mssql中的select name as 姓名  在oracle中 改为 select name 姓名
3.增加了 any, some 的嵌套查询功能 两个参数作用一样 例子如下
select name form class.emp where number>any(select number form student.emp where sex='男')
他查询的是学号大于任何一个男生学号的女生名字
4. 增加了 all 的嵌套查询功能 例子如下
select name form class.emp where number>all(select number form student.emp where sex='男')
他查询的是学号大于所有男生学号的女生名字
5.出现了并操作,交操作,差操作, 例子如下
(select name for class.emp)union (select name for class.dept) 这是并操作意思就是两个查询的并集
(select name for class.emp)intersect (select name for class.dept)  这是交操作意思就是两个查询的交集
(select name for class.emp)minus (select name for class.dept)  这是交操作意思就是两个查询的差

6.数据删除 truncate table 表名 表删除语句 和mssql中大不一样了 告别了delete 

7.在创建表的时候 应该在语句最后要 要注明保存到那个表空间 而sql没有这一项

语法如下:tableespace 表空间名 一半写两遍
同样在创建索引时候也要写下这个东西 不过写一遍 不过在创建试图的时候你可以不写轻松一下

在创建表的主键和 外键 还有约束的时候要前面要加怎么一句 constarint “名称” 然后在写什么 check(...),primary key(...)
这主要是要和可视界面操作下编辑表的约束条件选项卡中的 名称 栏相对应要不是个空的

8.oracle里多了截断这个操作 截断炒作的sql语法如下
truncatetable 用户名 表名 drop|reuse storage
如果使用drop storage 语句  显示指明释放数据表和索引的空间 若使用 reuse storgae显示指明不是方数据表何索引表的空间
如果那个表又外键关系 必须先消除外键 然后才能截断 sql语法  截断trucate 对所有的表的操作都很快 delete操作要产生大量的回滚信息 所以 如果表很大 则删除速度较慢。trucate是 ddl语言(数据定义语言) 隐含了提交操作,因此不能回滚。在用truacte删除表时可以看加快全表的扫面速度 delete 不能 截断操作不能删除完整性约束条件,而delete可以。


补一下linux下建立oracle 用户方法

linux下建立oracle 用户方法
创建 oracle 用户。 以 root 用户身份执行  
# groupadd oinstall  /*建立群组*/
# groupadd dba    /*建立群组*/
# mkdir -p /export/home/oracle /ocfs /*建立目录 -p 建立上级目录*/
# useradd -d /export/home/oracle -g oinstall -G dba -s /bin/ksh oracle /*建立用户 -g|-G建立上级目录 -d指定用户登入时的启始目录*/
# chown oracle:dba /export/home/oracle /u01 /*更改群组目录*/
# passwd oracle
New Password:
Re-enter new Password:
passwd: password successfully changed for oracle  /*该密码就不用多说了把*/

创建 oracle 用户环境文件。 
/export/home/oracle/.profile

然后添加环境变量   export 添加变量命令export [变量名称]=[变量设置值]

export PS1="`/bin/hostname -s`-> "
export EDITOR=vi
export ORACLE_SID=devdb1
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORA_CRS_HOME=$ORACLE_BASE/product/10.2.0/crs_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export PATH=$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:/bin:
/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
umask 022umask [-S][权限掩码]

创建文件系统目录结构。以 oracle 用户身份执行 
rac1-> mkdir p $ORACLE_BASE/admin 
rac1-> mkdir p $ORACLE_HOME
rac1-> mkdir p $ORA_CRS_HOME
rac1-> mkdir -p /u01/oradata/devdb