易截截图软件、单文件、免安装、纯绿色、仅160KB

SQL 92 标准 YoYo

        项目终于结束了,总结的时候到了... hehe :)
        在项目中我们遇到了很多的问题,标准SQL使用就是其中一个。 因为我们在做BI package的时候,一开始都是基于MS SQL 来做的,所以Universe的设计上也没有太多的考虑。 当后来老大告诉我偶们要同时release 一个基于 Oracle 的版本时,我们才发现问题来了。 因为在Universe里面我们使用的SQL很多都不是标准的SQL,很多都是MSSQL所独有的,也就是 T-SQL(Transcate SQL), 所以当把universe移植到Oracle上的时候,我们不得不为Oracle重新做了一套Universe。又因为Dashboard和Crystal Reports都是基于Universe来做的,所以最后我们的efforts 被扩大了一倍 ... 杯具啊!!
        项目做完了,现在来研究下哪些SQL是通用的,防止以后不要犯同样的错误。  以下内容均为本人google 所得,转载喽~~   hehe~
【概念总结】
1. 基本应用上,sql server 和oracle都遵循sql 92语法标准。
2. 实际应用中大家都会超出以上标准,使用各家数据库厂商都提供的丰富的自定义标准函数库和语法。
3. 微软sql server的sql 扩展叫T-SQL(Transcate SQL).
4. Oracle 的sql 扩展叫PL-SQL.
5. 最简单的插入、删除操作都差不多,但是稍微复杂一点,都不一样了。比如涉及到跨数据表,跨数据库,跨用户的操作的语法不一样。
6. 一个很简单的例子,去数据库系统时间的写法
tsql: select getdate()
pl-sql: select sysdate from dual
【SQL 92国际标准】
1. HOWTO - SQL92 Syntax
    - http://owen.sj.ca.us/rkowen/howto/sql92F.html
2. Wikipedia
    - http://en.wikipedia.org/wiki/SQL-92
    - http://en.wikipedia.org/wiki/SQL
【前人总结】
1. Oracle与SQL Server的几点不同
    - http://www.programfan.com/blog/article.asp?id=9101
2. SQL 92语法标准
以下内容来自CSDN博客,转载请标明出处:http://blog.csdn.net/wnhoo/archive/2007/04/11/1560941.aspx
==================================================
SQL92 Syntax and common or <Oracle> additions (not = '!')


相关文档:

sql 2005 存储过程分页 java 代码

 create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',         
@pagesize int output,--每页显示记录条数
@currentpage int output,--第几页
@orderid nvarchar(50),--主键排序
@sort int,--排序方式,1表示升序,0表示降序排列 ......

通过分析SQL语句的执行计划优化SQL(四)

五: ORACLE的执行计划
背景知识:为了更好的进行下面的内容我们必须了解一些概念性的术语:
 
共享sql语句
 
为了不重复解析相同的SQL语句(因为解析操作比较费资源,会导致性能下降),在第一次解析之后,ORACLE将SQL语句及解析后得到的执行计划存放在内存中。这块位于系统全局区域SGA(system global are ......

通过分析SQL语句的执行计划优化SQL(五)

Rowid的概念:
rowid是一个伪列,既然是伪列,那么这个列就不是用户定义,而是系统自己给加上的。对每个表都有一个rowid的伪列,但是表中并不物理存储ROWID列的值。不过你可以像使用其它列那样使用它,但是不能删除改列,也不能对该列的值进行修改、插入。一旦一行数据插入数据库,则rowid在该行的生命周期内是唯一的,即 ......

经典sql语句,实现了修改,增加,删除,判断表字段

create database test1
use test1
create table admin
(
   id int primary key ,
   name varchar(50),
   pwd  varchar(50),
)
insert into admin values(1,'aa','aa')
alter  table   admin   add   tel  varchar(50)   ......

SQL中dbo.

数据库所有者  (DataBase Owner)
dbo   是具有在数据库中执行所有活动的暗示性权限的用户。将固定服务器角色   sysadmin   的任何成员都映射到每个数据库内称为   dbo   的一个特殊用户上。另外,由固定服务器角色   sysadmin   的任何成员创建的任何对象都自动属于   ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号