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

商城网站优化方案品牌宣传策略有哪些

商城网站优化方案,品牌宣传策略有哪些,wordpress用户注册打文章,北京市网站建设企业概述 PostgreSQL游标可以封装查询并对其中每一行记录进行单独处理。当我们想对大量结果集进行分批处理时可以使用游标#xff0c;因为一次性处理可能造成内存溢出。 另外我们可以定义函数返回游标类型变量#xff0c;这是函数返回大数据集的有效方式#xff0c;函数调用者…概述 PostgreSQL游标可以封装查询并对其中每一行记录进行单独处理。当我们想对大量结果集进行分批处理时可以使用游标因为一次性处理可能造成内存溢出。 另外我们可以定义函数返回游标类型变量这是函数返回大数据集的有效方式函数调用者根据返回游标对结果进行处理。 下图展示了如何使用PostgreSQL游标 第一步声明游标.接着打开游标.然后从结果中取出行至目标变量中.之后检查是否有更多的行可以继续取。如何有返回第三步否则至第五步.最后,关闭游标. 下面章节我们会详细说明每一步。 声明游标 为了访问游标需要在声明块中声明游标变量。PostgreSQL提供了特定类型REFCURSOR 用于声明游标变量。下面示例声明非绑定游标 DECLARE     my_cursor REFCURSOR; 另一种方式声明绑定游标变量及声明时绑定查询语句语法如下 cursor_name [ [NO] SCROLL ] CURSOR [( name datatype, name data type, ...)] FOR query;首先指定游标变量名称。接着使用SCROLL指定游标是否可以回滚。如果使用 NO SCROLL游标不能回滚。然后是CURSOR关键字其后是逗号分隔的参数列表(name datatype) 用于定义查询参数。这些参数在游标打开是被替换。之后指定查询在FOR 关键字之后看使用任何有效的SELECT子句。 首先指定游标变量名称。接着使用SCROLL指定游标是否可以回滚。如果使用 NO SCROLL游标不能回滚。然后是CURSOR关键字其后是逗号分隔的参数列表(name datatype) 用于定义查询参数。这些参数在游标打开是被替换。之后指定查询在FOR 关键字之后看使用任何有效的SELECT子句。 下面示例如何声明游标变量 DECLARE     cur_films  CURSOR FOR SELECT * FROM film;     cur_films2 CURSOR (year integer) FOR SELECT * FROM film WHERE release_year year; cur_films是封装film表中所有记录的游标变量。 cur_films2是封装film表中带有特定发行年份记录的游标变量。 绑定游标变量被初始化为字符串值表示其名称(官方文档成为portal name)后续一致不变。但非绑定游标变量初始缺省为null值所以后期会接受一个自动生成的唯一名称。 当递归函数中定义游标时需定义为非绑定游标否则会产生错误cursor already in use。 ## 打开游标 游标在使用之前必须要打开PostgreSQL提供特定语法用于打开绑定游标和非绑定游标。 打开非绑定游标 打开非绑定游标语法 OPEN unbound_cursor_variable [ [ NO ] SCROLL ] FOR query;因为非绑定游标变量在声明时没有绑定任何查询因此在打开时必须指定查询。请看示例 OPEN my_cursor FOR SELECT * FROM city WHERE counter p_country;PostgreSQL 可以打开游标并绑定至动态查询语法如下 OPEN unbound_cursor_variable[ [ NO ] SCROLL ]  FOR EXECUTE query_string [USING expression [, ... ] ]; 在下面示例中我们构建动态查询基于sort_field参数对结果进行排序然后打开游标并执行动态查询 query : SELECT * FROM city ORDER BY $1;   OPEN cur_city FOR EXECUTE query USING sort_field;  打开绑定游标 因为绑定游标声明时已经绑定了查询所以打开时仅需要传入必要参数即可 OPEN cursor_variable[ (name:value,name:value,...)];下面示例中打开上节声明的绑定游标cur_films和cur_films2 OPEN cur_films; OPEN cur_films2(year:2005); 使用游标 打开游标之后可以使用FETCH, MOVE操纵游标并更新或删除记录。 取下一行记录语法 FETCH [ direction { FROM | IN } ] cursor_variable INTO target_variable; fetch语句从游标中获得下一行记录并赋值给目标变量target_variable可以是record类型或row变量或逗号分隔的变量列表。如果没有发现可取行目标变量target_variable为null。 如果不显示指定方向方向缺省为NEXT。可以有下面值 NEXTLASTPRIORFIRSTABSOLUTE countRELATIVE countFORWARDBACKWARD 注意使用SCROLL声明游标可以FORWARD 和 BACKWARD 。请看示例 FETCH cur_films INTO row_film; FETCH LAST FROM row_film INTO title, release_year; 移动游标 语法如下 MOVE [ direction { FROM | IN } ] cursor_variable;如果仅想移动游标并不返回行可以使用move语句。方向关键字与FETCH语句一致。 MOVE cur_films2; MOVE LAST FROM cur_films; MOVE RELATIVE -1 FROM cur_films; MOVE FORWARD 3 FROM cur_films; 删除或更新行 一旦游标位置确定则可以删除或更新行提供使用DELETE WHERE CURRENT OF 或 UPDATE WHERE CURRENT OF语句 UPDATE table_name  SET column value, ...  WHERE CURRENT OF cursor_variable;   DELETE FROM table_name  WHERE CURRENT OF cursor_variable; 请看示例 UPDATE film SET release_year p_year  WHERE CURRENT OF cur_films; 关闭游标 关闭游标使用close关键字 CLOSEC cursor_variable;close语句释放资源或释放游标变量使其可以被再次打开。 完整示例 下面的示例用于查询fooid为指定值的fooname首先创建表foo create table foo ( fooid int, fooname text ) 插入数据然后创建实例  create or replace function get_fooname1(id integer) returns text as $$ declare title text default fooname ; f_name record; cur_fname cursor(id integer) for select fooname,fooid from foo where fooidid; begin open cur_fname(id); loop fetch cur_fname into f_name; exit when not found;   title : title || : ||f_name.fooname; end loop; close cur_fname; return title; end; $$ language plpgsql; 然后使用select语句可以查询  postgres# select * from get_fooname1(1);  get_fooname1 --------------  fooname :hi (1 row)
http://www.hkea.cn/news/14411191/

相关文章:

  • 学校网站建设项目可行性分析wordpress数据放在哪里
  • 平山做网站优化江苏工程建设信息网
  • 安徽做网站的公司轻松建立网站
  • 建设网站 无法显示图片公司门户网站模板
  • 定制企业网站wordpress 后台点击没反应
  • 大型网站建设的价格wordpress如何加视频
  • 茂名做网站的公司wordpress 查询
  • 网站地图页面模板商业空间设计的特点
  • 网站开发 哪种效率高wordpress做一个视频网站
  • 房屋信息网站安卓开发前景如何
  • 聊城做网站建设的公司周到的做pc端网站
  • 有哪些做PPT背景网站深圳找工作58同城最新招聘
  • 关于网站建设的英文书籍五一自驾游去哪里好
  • 无法连接网站seo单页面优化
  • 泰安一级的企业建站公司建设银行官方网站网址
  • 升级网站域名服务商平台
  • 怎么做商品购买网站广告艺术设计专业
  • 有色建设网站免费网站平台推荐
  • 哈尔滨响应式网站建设公司足球网站模板下载
  • 网站渗透入侵全部教程兰州网页设计最新招聘信息
  • 电子商务网站开发设计报告淮南网备查询
  • 深圳移动官网网站建设iphone网站
  • 网站建设加盟合作厦门网络营销推广
  • 网站运营需要 做哪些工作软件商店免费下载
  • 顺德网站建设价位seo如何分析一个网站
  • 简单的asp网站源码第三方小程序开发平台有哪些
  • 公司网站设计与实现的英文文献石家庄网页设计的公司
  • 四川网站推广优化谷歌浏览器下载手机版安卓
  • 深圳市seo网站设计长沙互联网公司招聘
  • 个人网站制作模板主页怎么做网站的站点地图