TSQL与PLSQL的比较分析和总结.docx

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

TSQL与PL/SQL的比较

数据类型

记录表字段表记录表

自动增长变量

TSQL

numeric(p,s)decimal(p,s)char(m)varchar(m)datetime

AUTOINCREMENT

PL/SQL

numeric(p,s)orNUMBER(p,s)decimal(p,s)orNUMBER(p,s)Char(m)

varchar2(m)date

Record

%type

%rowtypeTable

变量声明、赋值与引用

声明

declare

TSQL

declare

PL/SQL

赋值引用

在SQL语句中赋值在SQL语句中引用

TSQLPL/SQL连接

TSQL

PL/SQL

连接

+TRIM

SUBSTRING

right(str,n)

||

LTRIM、RTRIMSUBSTR、SUBSTRBINSTR、INSTRB

substr(str,-n)

@ls_casherchar(1),@ln_payAmtdecimal(14,4)select@ls_casher=A

if@ls_casher=A

SELECT@ls_casher=salFROMempWHEREempno=emp_id;

SELECT*FROMemp

WHEREsal=@ls_casher;

on_hand INTEGER;ls_casherchar(1);

ls_casher:=’A’

ifls_casher=Athen

SELECTsalINTOls_casherFROMempWHEREempno=emp_id;

SELECT*FROMempWHERE

sal=ls_casher;

日期

TSQL

TSQL

PL/SQL

系统日期

getdate()

SYSDATE

数值

TSQL

TSQL

PL/SQL

空值判断与处理

TSQL

TSQL

PL/SQL

判断

空值替换

ISNULL

Isnull(para,0)

ISNULL

NVL(para,0)REPLACE(old_string,NULL,my_string)

转换

字符-日期

字符-日期、数值数值

其它

TSQL

Convert(datetime,expr,style)Convert(char(n),expr,style)

PL/SQL

To_Date(format,expr)To_char(expr,format)To_Number()

TSQL

TSQL

PL/SQL

语句

statementblock

TSQLBEGIN...END

BEGIN...END;

PL/SQL

conditional

Repeat

IF…ELSE…

IF…ELSEIF…else…

CASE

WHILEBoolean_expression

{statement_block}[BREAK]

{statement_block}[CONTINUE]

IF..then...ELSE…endif;

If…then…elsif…else…endif

3)decode

1)Loop…exit;…endloop;2)loop…exitwhen…endloop;3)WHILEconditionLOOP

sequence_of_statements;

EXITWHENboolean_expression;ENDLOOP;

3)for…in[reverse]…loop

endloop;

GOTO

GOTOlabel

GOTOlabel;

label:

label

Exitsunconditionally

RETURN

Return;

Sets a delay for

statement

WAITFOR

execution

Comment

--

/*…*/

--

/*…*/

PRINT

PRINTstring

Setserveroutputon

dbms_output.put_line(string);

RAISERROR

RAISERROR

EXECUTE

EXECUTE

NULLstatement

NULL;

5)cursor

TSQL

PL/SQL

DECLARE DECLAREcursor_nameCURSOR DECLARE

[LOCAL|GLOBAL] CURSORcursor_nameIS[FORWARD_ONLY|SCROLL] SELECT_statement;[S

文档评论(0)

hao187 + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

认证主体武汉豪锦宏商务信息咨询服务有限公司
IP属地湖北
统一社会信用代码/组织机构代码
91420100MA4F3KHG8Q

1亿VIP精品文档

相关文档