从SQL Server转换为Oracle

时间:2018-10-03 14:26:38

标签: sql sql-server oracle plsql

我有这个SQL Server查询:

CREATE PROCEDURE [dbo].[usp_GetBuyHoldSellValuationAdjusted_PE]
    (@userName VARCHAR(255) = NULL,
     @companyCode VARCHAR(255) = NULL,
     @portfolioCode VARCHAR(255) = NULL,
     @regionCode VARCHAR(255) = NULL,
     @sectorCode VARCHAR(255) = NULL,
     @countryCode VARCHAR(255) = NULL,
     @recommend VARCHAR(255) = NULL,
     @universe VARCHAR(20) = NULL,
     @includeWatches BIT = NULL,
     @economicClassificationCode VARCHAR(20) = NULL,
     @InvestmentTypeCode VARCHAR(20) = NULL)
AS
BEGIN

如何将这部分转换为Oracle PL / SQL版本?

1 个答案:

答案 0 :(得分:3)

类似这样的东西:

create procedure usp_GetBuyHoldSellValuationAdjusted_PE (
    userName in varchar2 default null,
    companyCode in varchar2 default null,
    . . .
    includeWatches in number default null,
    economicClassificationCode in varchar2 default null,
    InvestmentTypeCode in varchar2 default null
)
as
begin

区别是:

  • 参数名称中没有@
  • 字符串不需要长度-并且varchar2是首选数据类型。
  • 明确显示inout或两者同时显示。
  • 使用default作为默认值。
  • bit数据类型进行处理。