当前位置: 首页 > news >正文

四川网站建设服务租网站服务器价格

四川网站建设服务,租网站服务器价格,公司申请邮箱怎么申请,网站整体架构Oracle与SQL Server应用差异对比分析 Oracle 10g 项目 存储过程格式 存储过程名(参数列表) IS Begin ---存储过程内容 End 存储过程名; 备注 CREATE OR REPLACE PROCEDURE CREATE PROCEDURE 存储过程名 (参数列表) AS --存储过程内容 SQLServer 2008 1、 指定参数类型#xff…Oracle与SQL Server应用差异对比分析 Oracle 10g 项目 存储过程格式 存储过程名(参数列表) IS Begin ---存储过程内容 End 存储过程名; 备注 CREATE OR REPLACE PROCEDURE CREATE PROCEDURE 存储过程名 (参数列表) AS --存储过程内容 SQLServer 2008 1、 指定参数类型并要指定长度 2、 对于出参需要在类型后面加OUTPUT(或OUT) Eg: task_remark VARCHAR(10) prm_code int output 存储过程参数 1、 指定参数类型但不指定长度 2、 在参数及类型间要加入出标识(IN、OUT) Eg: task_remark IN VARCHAR2 prm_code OUT NUMBER 使用存储过程 1、 直接使用存储过程名 2、 参数在存储过程后面的括号包内列出 Eg: p_wfm_getcolumns(v_tablename,v_tablecolumn); 1、 调用存储过程名前面需要加 exec关键字 2、 参数在存储过程后面逐个列出 3、 出参后面要加关键字output或out Eg: EXEC OUTPUT P_WFM_GETCOLUMNS tablename,tablecolumn 自定义函数格式 CREATE OR REPLACE FUNCTION CREATE FUNCTION 函数名 (参数函数名 (参数列表) RETURN 返回值类型 IS BEGIN END; 列表) RETURNs 返回值类型 AS --函数内容 自定义函数内容 1、 指定参数类型但不指定长度 2、 在参数及类型间要加入出标识(IN、OUT) Eg: task_remark IN VARCHAR2 prm_code OUT NUMBER 1、 指定参数类型并要指定长度 2、 不支持出参 Eg: task_remark VARCHAR(10) 3、 支持对数据增、删、改操作 4、 支持动态SQL语句 使用自定义函数 1、 直接使用函数名 Eg: V_result :f_wfm_isandbegin(flow_id, step_id) 3、 不支持对数据增、删、改操作 4、 不支持动态SQL语句 1、 在函数名前面加上dbo. Eg: Set result dbo.f_wfm_isandbegin(flow_id, step_id) 游标 1、 游标声明 DECLARE cursor 游标名 is select语句 1、 游标声明 DECLARE游标名cursor for select语句 2、 使用游标过程 打开(open)-提取(fetch)-关闭(close) 3、 支持快捷使用游标直接使用for循环数据库会自动打开、提取及关闭游标 变量 1、 变量前不可加符号 2、 存储过程中变量声明不需要declare Eg: Code varchar2(5); 2、 使用游标过程 打开(open)-提取(fetch)-关闭(close)-销毁( 1、 变量前需要加符号 2、 变量声明需要使用Declare关键字 Eg: DECLARE code varchar(5); 3、 变量类型可按表中字段类型动态定义 Eg: V_id sysc01.id%type; 赋值 3、 不支持按表字段类型动态定义 1、 变量直接赋值,变量 : 表达式; 1、 变量直接赋值Set 变量表达式; Eg: Eg: v_result : ‘abcd’; Set result ‘abcd’ 2、 通过SQL语句 2、 通过SQL语句赋值 Select 表达式 into 变量 from Select 变量表达式 from 表 Eg: 表 Eg: Select Select code,name into codecode,namename from v_code,v_name from sysc01 sysc01 where id 1000 Where id 1000 语句结束符 大小写 序列 Select 语法 SQL语句使用分号 ; 作为语句的结束 Oracle对字符区分大小写 1、 有序列sequence对象无自动增长列 1、 结果集可做为表使用使用时可不加别名 Eg: Select * from (select * from tab1) 2、 虚表 dual的使用对于select计算某些与实体表无关的表达式时要使用虚表dual Eg: Select round(1/3,2) from dual ; 3、 SQL语句不需要加分号;作为结束符(加也可) 默认对字符不区分大小写也可修改数据库配置支持区分大小写 1、 无序列对象表中有自动增长列 1、 结果集可做为表使用使用时必须加别名 Eg: Select * from (select * from tab1) a 2、 对于Select计算某些与实体表无关的表达式时可使用不带from的select语句 Eg: Select round(1/3,2) ; 3、 可关联表更新 Eg: Update a set a.value isnull(b.value,’’) 将a表中value Update语法 不可关联表更新 Eg: For cur in (select a.id,b.value from a inner join b on a.id b.id ) loop Update a set a.value cur.value Where a.id cur.id; End loop; 或 Update a set a.value (select b.value From b where b.id a.id ) Delete语法 From a inner join b on a.id b.id 或 Update a set a.value isnull(b.value,’’) From b where a.id b.id 按ID更新成b表中的value值 删除a表中ID值在b表中存在的记录 不可关联表删除 可关联表删除 Eg: Eg: Delete a where exists (select b.id Delate a from b where a.id b.id ) From a Inner join b on a.id b.id 动态SQL语句 1、 普通动态SQL语句 Begin Execute immediate ‘update tab1 set column15’; End; 用变量替换SQL语句 V_sql : ‘update tab1 set column15’ Execute immediate v_sql; 2、 带出参动态SQL语句 n_count number(10); v_sql varchar2(1000); v_sql :’ select count(*) from tablename’; execute immediate v_sql into n_count; 3、 动态存储过程(带入、出参) Eg: v_sql : begin p_test (:v1,:v2,:v3); end; execute immediate v_sql using in v_code,in v_name,out v_result ; 1、 普通动态SQL语句 exec(update tab1 set column1 5) 或 exec sp_executesql Nselect * from tableName -- 字符串前一定要加N 用变量替换SQL语句 Declare sql Nvarchar(1000) Set sqlselect * from tableName exec sp_executesql sql 2、 带出参动态SQL语句 declare count int declare sqls nvarchar(4000) set sqlsselect acount(*) from tableName exec sp_executesql sqls,Na int output,count output 3、 动态存储过程(带入、出参) Eg: DECLARE result VARCHAR(50); DECLARE sql NVARCHAR(1000); DECLARE para NVARCHAR(200); SET sql p_test code,name,result output SET para code varchar(10),name varchar(10),result varchar(50) output EXEC sp_executesql 注p_test为存储过程名 sql,para,001,,result OUTPUT 注p_test 为存储过程名 张三TOP用法 1、在Oracle中采用伪列rownum 获取结果集中排在前面的部分记录 Eg: 返回结果集中前10条记录 Select * from sysc01 where rownum 10 Rownum可使用、符号如果使用号只可1 2、Rownum列还常用于形成结果集的顺序号从而可获取一定序号范围的行 Eg: 获取按code排名第10到20行 Select * from (Select a.*,rownum as nrow from tab01 a order by code) where nrow between 10 and 20 1、SQLServer中采购top方式获取结果集排在前面的部分记录 Eg:返回结果集中前10条记录 Select top 10 * from sysc01 2、sqlserver可通过ROW_NUMBER()排名函数实现 Eg: 获取按code排名第10到20行 SELECT a.* FROM (SELECT a.*,ROW_NUMBER() OVER( ORDER BY a.code ) AS nrow FROM tab01 a) a where nrow between 10 and 20 IF… Else 流控制 IF 条件表达式 then {语句块} Else {语句块} End if ; 1、 表达式 Case 表达式 when 匹配表达式 then 结果表达式1 else 结果表达式2 end Eg: Select case name when ‘张三’ then 1 when ‘李四’ then 2 else 0 end From person 或 Case when 条件表达式 then 结果表达式1 else 结果表达式2 end Eg: Select case when name‘张三’ then 1 when name‘李四’ then 2 else 0 end From person 2、 流控制语句 流控制与表达式结构很相似只是IF 条件表达式 {语句块} Else {语句块} End 如果语句块中有多于1条SQL语句则必须要使用begin … end 构造 1、 case表达式 同Oracle 2、不支持流控制 Case 用法
http://wiki.neutronadmin.com/news/85049/

相关文章:

  • pyton 网站开发网站的建设及维护
  • 大连 做网站公司个人主页网页设计源代码
  • 做网站的时候网站的第一个字母怎么在网站标题前面显示 比如谷歌g一样万网域名申请网站
  • 网站首页改版需求有没有做高仿手表的网站
  • 太原网站seo搜索优化wordpress广告代码是什么意思
  • 做网站用是内网穿透好搜索引擎优化的概念
  • 网站建设与管理专业就业方向jsp做的网站代码
  • WordPress情侣网站wordpress产品参数多图
  • 如何查网站域名备案重庆梁平网站建设报价
  • 网站建设证有中国建设网查询平台网址
  • 网站的维护和推广广告在线设计制作
  • 建站套餐推荐怎么优化百度关键词
  • 网站关站域名解析错误连不上网
  • 网上有做logo的网站吗个人网站备案简介
  • 网站建设个人年终总结机械模板网站
  • 搭建一个网站的流程建设银行咸阳交费网站
  • 建什么网站可以赚钱怎么在网站添加关键词
  • 网站制作流程一般制作流程?巨量千川广告投放平台
  • 深圳网站建设有限公司宏润建设集团股份有限公司网站
  • 用php做的博客网站有哪些高州新闻 头条 今天
  • 网站建设运营维护方案搜索引擎推广特点
  • 做网站开源深圳市招投标交易中心
  • 公司网站的个人主页怎么做网络游戏传奇
  • 做网站要多少费用环保局网站如何做备案证明
  • 黄山建设网站公司电话号码wordpress 常用钩子
  • 杭州住房和城乡建设局网站首页企业软件管家
  • 网站模板安装好后腾讯街景地图全景在线
  • 哪些网站怎么进桓台做网站
  • 建造个网站花多少钱广西建设工会网站
  • 凡客网站做SEO能被收录吗横琴高新区最新