`
ganqing1234
  • 浏览: 171248 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

PL/SQL 學習筆記 2 文字(literal)和类型

SQL 
阅读更多

(一)literal 是一个不能成为标识符的字符、数值或者布尔值。

 

1. 字符型文字

    就是串文字,包含了由单引号界定的一个或多个字符。字符型文字可直接赋给char后者varchar2的变量。如果想包含引号需要将两个单引号并排放置。'''' 相当于包含单个引号的字符,不等于'',''表示0长度字符串,在pl/sql中与null相同。

 

2. 数字型文字

    表示一个整数或者实数数值。可直接赋值给number的变量。是唯一可以成为算术表达式的一部分文字。

 

3. 布尔型文字

    true、false、null

 

(二)变量

1. 变量声明

    variable_name type [constant] [not null] [:= value]; 可以使用default替代:=,对于未初始化的变量会赋值为null。另外在同一行上只能有一个变量声明。如:

 

DECLARE

        v_fristname, v_lastname VARCHAR2(20); 是错误的 应该是

        v_fristname VARCHAR2(20);

        v_lastname VARCHAR2(20); 
 

 

 (三)pl/sql 4种类型

     标量(scalar)、复合(composite)以及引用(reference)和lob类型。

  1. 使用%type

      如:

 

DECLARE

            v_Tempvar NUMBER(7,3) NOT NULL := 12.3;

            v_var2 v_Tempvar%TYPE; -- returns NUMBER(7,3) 
 

2. 用户定义子类型

    基于现有类型的pl/sql类型。主要是提供个新类型便于理解。pl/sql的standard包里定义了一些,如decumal和integer就是number的子类型。

    语法如下:

SUBTYPE new_type IS original_type

 定义子类型不能直接使用限定如下面的声明就是错误的

DECLARE
              var1 NUMBER(4);
              SUBTYPE subType1 is var1%TYPE;
              subType1 var2

 可以使用%type来实现这样的需求。

 

 

 

 

分享到:
评论

相关推荐

    不同wsdl样式对应的soap消息格式

    通过示例说明document/literal、document/literal(wrapped)、rpc/encoded、rpc/literal样式的web服务对应的soap消息格式,对于理解webservice有很大好处,尤其是根据wsdl构造soap消息,非常有价值。

    CLOB 字段类型报错 ORA-01704: 文字字符串过长的解决

    而对于CLOB类型,虽然没有硬性长度限制,但一次PL/SQL语句中的绑定变量值不能超过4000个字符。 在处理这类问题时,有几种常见的解决方案: 1. **分块插入**: 当你的数据长度超过了4000个字符,你可以选择分批...

    AXIS2 RCP/literal样式,两种MESSAGE定义方式SOAP的payload

    总结起来,AXIS2 RCP/literal样式中的两种MESSAGE定义方式对于开发和调试SOAP Web服务客户端至关重要。硬编码XML字符串适用于简单场景,而JOM更适合处理复杂的业务逻辑和数据结构。TCPMon作为一个实用的辅助工具,...

    axis1.4 + document/literal 实例

    总结起来,这个"axis1.4 + document/literal 实例"提供了一个学习如何使用Axis 1.4框架创建和调用基于document/literal绑定的Web服务的机会。通过分析和实践提供的客户端和服务端代码,开发者可以加深对Web服务原理...

    Literal控件的使用

    2. Mode属性:用于指定Literal控件的显示模式,包括Transform、PassThrough和Encode三种模式。 3. Encode方法:用于将Literal控件的文本内容进行HTML编码。 Literal控件的使用注意事项 在使用Literal控件时需要...

    从实践中学习oracleSQL读书笔记

    以下是从《从实践中学习 oracle/SQL》一书第一章和第二章中提取的知识点: 1. **简单查询语句**:基本的查询语句由`SELECT`和`FROM`构成,如`SELECT * FROM employees`,其中`*`表示选取所有列,而`;`作为语句结束...

    Literal(2.0)

    2. Mode:此属性用于指定Literal控件的行为模式,有三种可选值:`PassThrough`(默认),`Encode`和`Transform`。`PassThrough`模式下,Literal控件不处理文本,直接输出;`Encode`模式会将文本HTML编码,防止XSS...

    学习之sql注入漏洞网址的创建

    3. 修改dvwa源码:找到与SQL注入相关的页面,如dvwa/vulnerabilities/sqli-literal/,修改其查询代码,增加易受攻击的点。 4. 验证注入:在浏览器中输入修改后的URL,尝试输入SQL注入语句,观察是否能得到预期的结果...

    C#6.0学习笔记从第一行C#代码到第一个项目设计

    本学习笔记将带你从零开始,逐步掌握C#的基础语法,并最终实现你的第一个项目设计。下面,我们将详细探讨C# 6.0中的关键知识点。 1. **自动属性(Auto-Implemented Properties)** 在C# 6.0之前,我们定义属性通常...

    学习笔记java _day02

    此外,我们还学习了基本数据类型(Primitive data types)、默认值(Literal values for different types)以及运算符(Operators)。Java中的基本数据类型包括: - **布尔型(boolean)**: 只有两种值,`false`或`...

    plan_table学习笔记

    Plan Table 学习笔记 Plan Table 是 Oracle 中的一个重要的数据结构,用于存储执行计划的信息。执行计划是指数据库管理系统在执行 SQL 语句时的操作步骤,最重要的是,它可以帮助我们优化查询性能。 在使用 Plan ...

    div+Literal控件的定位

    在网页设计中,"div+Literal控件"的定位是一个重要的技术环节,它涉及到前端布局和用户交互体验。本文将详细解析如何通过div元素和Literal控件实现精确定位选项卡,以及处理滚动条出现时的内容展示问题。 首先,`...

    sql-tagged-template-literal:ES6 SQL转义的带标签模板文字,它吐出经过清理SQL字符串

    sql-tagged-template-literal npm install sql-tagged-template-literal 对于数据转储和其他“只是给我查询”任务很有用。 const userInput = `Robert'); DROP TABLE Students;--` const query = sql `INSERT ...

    SQL-92标准 中文翻译——定义、记号和约定 (约定)

    - `literal`:字面量,直接出现在SQL语句中的固定数据值。 - `comparison`:比较操作,用于比较两个值是否相等或满足其他条件。 - `predicate`:谓词,逻辑表达式的组成部分,通常用来过滤查询结果。 - `null`:...

    WSDL样式详解,soap中Rpc和Document的区别

    - **Document/Literal/Wrapped**:这种变体是Document/Literal的一个小扩展,它将每个操作包装在一个额外的元素内,以提供更好的命名空间隔离和清晰度,但基本概念保持不变。 每种样式都有其适用场景。RPC样式通常...

    天轰穿系列教程之-40HiddenField、LinkButton、Literal

    天轰穿系列教程之-40HiddenField、LinkButton、Literal天轰穿系列教程之-40HiddenField、LinkButton、Literal天轰穿系列教程之-40HiddenField、LinkButton、Literal天轰穿系列教程之-40HiddenField、LinkButton、...

    南大通用GBase8s SQL常用SQL语句(十八).docx

    南大通用 GBase8s SQL 常用语句(十八) 本文档介绍了 GBase8s 中的 DROP VERCOLS 关键字、ADD Column 子句、BEFORE 子句和 DEFAULT 子句的使用。 一、DROP VERCOLS 关键字 DROP VERCOLS 关键字用于删除阴影列。...

    001-glib-gdate-suppress-string-format-literal-warning.patch

    001-glib-gdate-suppress-string-format-literal-warning.patch 001-glib-gdate-suppress-string-format-literal-warning.patch 001-glib-gdate-suppress-string-format-literal-warning.patch

    SQL-用于解析+生成SQL语句的Ruby库.zip

    例如,` Sequel` 的`safe_literal` 方法可以确保用户输入的数据被正确地转义,防止SQL注入攻击。 总结来说,Ruby中的SQL解析和生成库为开发者提供了强大而灵活的工具,使他们能够更加自如地处理SQL语句。无论是在...

Global site tag (gtag.js) - Google Analytics