云服务器内容精选
-
变量声明 变量声明语法请参见图1。 图1 declare_variable::= 对以上语法格式的解释如下: variable_name:变量名。 type:变量类型。 value:该变量的初始值(如果不给定初始值,则初始为NULL)。value也可以是表达式。 示例 1 2 3 4 5 6 openGauss=# DECLARE emp_id INTEGER := 7788; --定义变量并赋值 BEGIN emp_id := 5*7784; --变量赋值 END; /
-
示例 openGauss=# DROP TABLE IF EXISTS customers; openGauss=# CREATE TABLE customers(id int,name varchar); openGauss=# INSERT INTO customers VALUES(1,'ab'); openGauss=# DECLARE my_id integer; BEGIN select id into my_id from customers limit 1; -- 赋值 END; / openGauss=# DECLARE type id_list is varray(6) of customers.id%type; id_arr id_list; BEGIN select id bulk collect into id_arr from customers order by id DESC limit 20; -- 批量赋值 END; / BULK COLLECT INTO 只支持批量赋值给数组。合理使用LIMIT字段避免操作过量数据导致性能下降。
-
变量作用域 变量的作用域表示变量在代码块中的可访问性和可用性。只有在它的作用域内,变量才有效。 变量必须在declare部分声明,即必须建立BEGIN-END块。块结构也强制变量必须先声明后使用,即变量在过程内有不同作用域、不同的生存期。 同一变量可以在不同的作用域内定义多次,内层的定义会覆盖外层的定义。 在外部块定义的变量,可以在嵌套块中使用。但外部块不能访问嵌套块中的变量。 示例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 openGauss=# DECLARE emp_id INTEGER :=7788; --定义变量并赋值 outer_var INTEGER :=6688; --定义变量并赋值 BEGIN DECLARE emp_id INTEGER :=7799; --定义变量并赋值 inner_var INTEGER :=6688; --定义变量并赋值 BEGIN dbe_output.print_line('inner emp_id ='||emp_id); --显示值为7799 dbe_output.print_line('outer_var ='||outer_var); --引用外部块的变量 END; dbe_output.print_line('outer emp_id ='||emp_id); --显示值为7788 END; /
-
变量声明 变量声明语法请参见图1。 图1 declare_variable::= 对以上语法格式的解释如下: variable_name,为变量名。 type,为变量类型。 value,是该变量的初始值(如果不给定初始值,则初始为NULL)。value也可以是表达式。 示例 1 2 3 4 5 6 openGauss=# DECLARE emp_id INTEGER := 7788; --定义变量并赋值 BEGIN emp_id := 5*7784; --变量赋值 END; /
-
变量作用域 变量的作用域表示变量在代码块中的可访问性和可用性。只有在它的作用域内,变量才有效。 变量必须在declare部分声明,即必须建立BEGIN-END块。块结构也强制变量必须先声明后使用,即变量在过程内有不同作用域、不同的生存期。 同一变量可以在不同的作用域内定义多次,内层的定义会覆盖外层的定义。 在外部块定义的变量,可以在嵌套块中使用。但外部块不能访问嵌套块中的变量。 示例 gaussdb=# DECLARE emp_id INTEGER :=7788; --定义变量并赋值 outer_var INTEGER :=6688; --定义变量并赋值 BEGIN DECLARE emp_id INTEGER :=7799; --定义变量并赋值 inner_var INTEGER :=6688; --定义变量并赋值 BEGIN dbe_output.print_line('inner emp_id ='||emp_id); --显示值为7799 dbe_output.print_line('outer_var ='||outer_var); --引用外部块的变量 END; dbe_output.print_line('outer emp_id ='||emp_id); --显示值为7788 END; /
-
变量声明 变量声明语法请参见图1。 图1 declare_variable::= 对以上语法格式的解释如下: variable_name:变量名。 type:变量类型。 value:该变量的初始值(如果不给定初始值,则初始为NULL)。value也可以是表达式。 示例 1 2 3 4 5 6 7 gaussdb=# DECLARE emp_id INTEGER := 7788; --定义变量并赋值 BEGIN emp_id := 5*7784; --变量赋值 END; / ANONYMOUS BLOCK EXECUTE
-
示例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 --建表 gaussdb=# CREATE SCHEMA hr; CREATE SCHEMA gaussdb=# SET CURRENT_SCHEMA = hr; SET gaussdb=# CREATE TABLE staffs ( section_id INTEGER, salary INTEGER ); CREATE TABLE gaussdb=# INSERT INTO staffs VALUES (30, 10); INSERT 0 1 gaussdb=# INSERT INTO staffs VALUES (30, 20); INSERT 0 1 --创建存储过程proc_staffs gaussdb=# CREATE OR REPLACE PROCEDURE proc_staffs ( section NUMBER(6), salary_sum out NUMBER(8,2), staffs_count out INTEGER ) IS BEGIN SELECT sum(salary), count(*) INTO salary_sum, staffs_count FROM hr.staffs where section_id = section; END; / CREATE PROCEDURE --创建存储过程proc_return. gaussdb=# CREATE OR REPLACE PROCEDURE proc_return AS v_num NUMBER(8,2); v_sum INTEGER; BEGIN proc_staffs(30, v_sum, v_num); --调用语句 dbe_output.print_line(v_sum||'#'||v_num); RETURN; --返回语句 END; / CREATE PROCEDURE --调用存储过程proc_return. gaussdb=# CALL proc_return(); 30#2.00 proc_return ------------- (1 row) --清除存储过程 gaussdb=# DROP PROCEDURE proc_staffs; DROP PROCEDURE gaussdb=# DROP PROCEDURE proc_return; DROP PROCEDURE gaussdb=# DROP TABLE staffs; DROP TABLE
-
变量作用域 变量的作用域表示变量在代码块中的可访问性和可用性。只有在它的作用域内,变量才有效。 变量必须在declare部分声明,即必须建立BEGIN-END块。块结构也强制变量必须先声明后使用,即变量在过程内有不同作用域、不同的生存期。 同一变量可以在不同的作用域内定义多次,内层的定义会覆盖外层的定义。 在外部块定义的变量,可以在嵌套块中使用。但外部块不能访问嵌套块中的变量。 示例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 gaussdb=# DECLARE emp_id INTEGER :=7788; --定义变量并赋值 outer_var INTEGER :=6688; --定义变量并赋值 BEGIN DECLARE emp_id INTEGER :=7799; --定义变量并赋值 inner_var INTEGER :=6688; --定义变量并赋值 BEGIN dbe_output.print_line('inner emp_id ='||emp_id); --显示值为7799 dbe_output.print_line('outer_var ='||outer_var); --引用外部块的变量 END; dbe_output.print_line('outer emp_id ='||emp_id); --显示值为7788 END; /
-
变量声明 变量声明语法如图1所示。 图1 declare_variable::= 对以上语法格式的解释如下: variable_name,为变量名。 type,为变量类型。 value,是该变量的初始值(如果不给定初始值,则初始为NULL)。value也可以是表达式。 示例 1 2 3 4 5 6 gaussdb=# DECLARE emp_id INTEGER := 7788; --定义变量并赋值 BEGIN emp_id := 5*7784; --变量赋值 END; /
-
变量作用域 变量的作用域表示变量在代码块中的可访问性和可用性。只有在它的作用域内,变量才有效。 变量必须在DECLARE部分声明,即必须建立BEGIN-END块。块结构也强制变量必须先声明后使用,即变量在过程内有不同作用域、不同的生存期。 同一变量可以在不同的作用域内定义多次,内层的定义会覆盖外层的定义。 在外部块定义的变量,可以在嵌套块中使用。但外部块不能访问嵌套块中的变量。 示例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 gaussdb=# DECLARE emp_id INTEGER :=7788; --定义变量并赋值 outer_var INTEGER :=6688; --定义变量并赋值 BEGIN DECLARE emp_id INTEGER :=7799; --定义变量并赋值 inner_var INTEGER :=6688; --定义变量并赋值 BEGIN dbe_output.print_line('inner emp_id ='||emp_id); --显示值为7799 dbe_output.print_line('outer_var ='||outer_var); --引用外部块的变量 END; dbe_output.print_line('outer emp_id ='||emp_id); --显示值为7788 END; /
-
变量声明 变量声明语法请参见图1。 图1 declare_variable::= 对以上语法格式的解释如下: variable_name,为变量名。 type,为变量类型。 value,是该变量的初始值(如果不给定初始值,则初始为NULL)。value也可以是表达式。 示例 1 2 3 4 5 6 gaussdb=# DECLARE emp_id INTEGER := 7788; --定义变量并赋值 BEGIN emp_id := 5*7784; --变量赋值 END; /
-
%TYPE属性 %TYPE主要用于声明某个与其他变量类型(例如,表中某列的类型)相同的变量。假如想定义一个my_name变量,它的变量类型与employee的firstname类型相同,可使用如下定义: my_name employee.firstname%TYPE 这样定义可以带来两个好处,首先,不用预先知道employee 表的firstname类型具体是什么。其次,即使之后firstname类型有了变化,也不需要再次修改my_name的类型。
-
变量声明 变量声明语法请参见图1。 图1 declare_variable::= 对以上语法格式的解释如下: variable_name,为变量名。 type,为变量类型。 value,是该变量的初始值(如果不给定初始值,则初始为NULL)。value也可以是表达式。 示例 1 2 3 4 5 6 DECLARE emp_id INTEGER := 7788; --定义变量并赋值 BEGIN emp_id := 5*7784; --变量赋值 END; /
-
变量作用域 变量的作用域表示变量在代码块中的可访问性和可用性。只有在它的作用域内,变量才有效。 变量必须在declare部分声明,即必须建立BEGIN-END块。块结构也强制变量必须先声明后使用,即变量在过程内有不同作用域、不同的生存期。 同一变量可以在不同的作用域内定义多次,内层的定义会覆盖外层的定义。 在外部块定义的变量,可以在嵌套块中使用。但外部块不能访问嵌套块中的变量。 示例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 DECLARE emp_id INTEGER :=7788; --定义变量并赋值 outer_var INTEGER :=6688; --定义变量并赋值 BEGIN DECLARE emp_id INTEGER :=7799; --定义变量并赋值 inner_var INTEGER :=6688; --定义变量并赋值 BEGIN dbms_output.put_line('inner emp_id ='||emp_id); --显示值为7799 dbms_output.put_line('outer_var ='||outer_var); --引用外部块的变量 END; dbms_output.put_line('outer emp_id ='||emp_id); --显示值为7788 END; /
-
变量声明 变量声明语法请参见图1。 图1 declare_variable::= 对以上语法格式的解释如下: variable_name,为变量名。 type,为变量类型。 value,是该变量的初始值(如果不给定初始值,则初始为NULL)。value也可以是表达式。 示例 1 2 3 4 5 6 DECLARE emp_id INTEGER := 7788; --定义变量并赋值 BEGIN emp_id := 5*7784; --变量赋值 END; /
更多精彩内容
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格