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

建设淘宝网站的市场分析wordpress第三方jquery

建设淘宝网站的市场分析,wordpress第三方jquery,抖音小程序代理,免费行情网站下载大全参考文档#xff1a; http://postgres.cn/docs/12/ddl-partitioning.html 创建基于继承的分区表的步骤 1 创建父表 2 创建子表#xff0c;从父表继承过来 3 创建函数及触发器#xff0c;使插入的数据根据规则#xff0c;插入到对应的子表中 -- 创建父表 CREATE TABLE a…参考文档 http://postgres.cn/docs/12/ddl-partitioning.html 创建基于继承的分区表的步骤 1 创建父表 2 创建子表从父表继承过来 3 创建函数及触发器使插入的数据根据规则插入到对应的子表中  -- 创建父表 CREATE TABLE apps.measurement (city_id int not null,logdate date not null,peaktemp int,unitsales int );test# CREATE TABLE apps.measurement ( test(# city_id int not null, test(# logdate date not null, test(# peaktemp int, test(# unitsales int test(# ); CREATE TABLE test# -- 创建分区表5个分区  CREATE TABLE apps.measurement_y2023m01 (CHECK ( logdate DATE 2023-01-01 AND logdate DATE 2023-02-01 )) INHERITS (measurement); CREATE TABLE apps.measurement_y2023m02 (CHECK ( logdate DATE 2023-02-01 AND logdate DATE 2023-03-01 )) INHERITS (measurement); CREATE TABLE apps.measurement_y2023m03 (CHECK ( logdate DATE 2023-03-01 AND logdate DATE 2023-04-01 )) INHERITS (measurement); CREATE TABLE apps.measurement_y2023m04 (CHECK ( logdate DATE 2023-04-01 AND logdate DATE 2023-05-01 )) INHERITS (measurement); CREATE TABLE apps.measurement_y2023m05 (CHECK ( logdate DATE 2023-05-01 AND logdate DATE 2023-06-01 )) INHERITS (measurement);test# CREATE TABLE apps.measurement_y2023m01 (CHECK ( logdate DATE 2023-01-01 AND logdate DATE 2023-02-01 )) INHERITS (measurement); CREATE TABLE test# CREATE TABLE apps.measurement_y2023m02 (CHECK ( logdate DATE 2023-02-01 AND logdate DATE 2023-03-01 )) INHERITS (measurement); CREATE TABLE test# CREATE TABLE apps.measurement_y2023m03 (CHECK ( logdate DATE 2023-03-01 AND logdate DATE 2023-04-01 )) INHERITS (measurement); CREATE TABLE test# CREATE TABLE apps.measurement_y2023m04 (CHECK ( logdate DATE 2023-04-01 AND logdate DATE 2023-05-01 )) INHERITS (measurement); CREATE TABLE test# CREATE TABLE apps.measurement_y2023m05 (CHECK ( logdate DATE 2023-05-01 AND logdate DATE 2023-06-01 )) INHERITS (measurement); CREATE TABLE test# -- 创建触发器函数针对不同月份的数据落入不同的子表从而达到数据分区的效果 CREATE OR REPLACE FUNCTION apps.measurement_insert_trigger() RETURNS TRIGGER AS $$ BEGINIF (NEW.logdate DATE 2023-01-01 AND NEW.logdate DATE 2023-02-01) THEN INSERT INTO apps.measurement_y2023m01 values (NEW.*);ELSIF (NEW.logdate DATE 2023-02-01 AND NEW.logdate DATE 2023-03-01) THEN INSERT INTO apps.measurement_y2023m02 values (NEW.*);ELSIF (NEW.logdate DATE 2023-03-01 AND NEW.logdate DATE 2023-04-01) THEN INSERT INTO apps.measurement_y2023m03 values (NEW.*);ELSIF (NEW.logdate DATE 2023-04-01 AND NEW.logdate DATE 2023-05-01) THEN INSERT INTO apps.measurement_y2023m04 values (NEW.*);ELSIF (NEW.logdate DATE 2023-05-01 AND NEW.logdate DATE 2023-06-01) THEN INSERT INTO apps.measurement_y2023m05 values (NEW.*); ELSE RAISE EXCEPTION Date out of range .Fix the apps.measurement_insert_trigger() function!;END IF;RETURN NULL; END; $$ LANGUAGE plpgsql;test# CREATE OR REPLACE FUNCTION apps.measurement_insert_trigger() test-# RETURNS TRIGGER AS $$ test$# BEGIN test$# IF (NEW.logdate DATE 2023-01-01 AND NEW.logdate DATE 2023-02-01) THEN test$# INSERT INTO apps.measurement_y2023m01 values (NEW.*); test$# test$# ELSE IF (NEW.logdate DATE 2023-02-01 AND NEW.logdate DATE 2023-03-01) THEN test$# INSERT INTO apps.measurement_y2023m02 values (NEW.*); test$# test$# ELSE IF (NEW.logdate DATE 2023-03-01 AND NEW.logdate DATE 2023-04-01) THEN test$# INSERT INTO apps.measurement_y2023m03 values (NEW.*); test$# test$# ELSE IF (NEW.logdate DATE 2023-04-01 AND NEW.logdate DATE 2023-05-01) THEN test$# INSERT INTO apps.measurement_y2023m04 values (NEW.*); test$# test$# ELSE IF (NEW.logdate DATE 2023-05-01 AND NEW.logdate DATE 2023-06-01) THEN test$# INSERT INTO apps.measurement_y2023m05 values (NEW.*); test$# test$# ELSE test$# RAISE EXCEPTION Date out of range .Fix the apps.measurement_insert_trigger() function! ; test$# END IF; test$# RETURN NULL; test$# END; test$# $$ test-# LANGUAGE plpgsql; CREATE FUNCTION test# -- 创建触发器  不带schema创建的触发器默认就在apps的schema中 CREATE TRIGGER APPS.INSERT_MEASUREMENT_TRIGGER 奇怪触发器带schema创建的时候报错 BEFORE INSERT ON APPS.MEASUREMENTFOR EACH ROW EXECUTE FUNCTION APPS.MEASUREMENT_INSERT_TRIGGER();CREATE or replace TRIGGER INSERT_MEASUREMENT_TRIGGERBEFORE INSERT ON APPS.MEASUREMENTFOR EACH ROW EXECUTE FUNCTION APPS.MEASUREMENT_INSERT_TRIGGER(); test# CREATE TRIGGER APPS.INSERT_MEASUREMENT_TRIGGER test-# BEFORE INSERT ON APPS.MEASUREMENT test-# FOR EACH ROW EXECUTE FUNCTION APPS.MEASUREMENT_INSERT_TRIGGER(); ERROR: syntax error at or near . LINE 1: CREATE TRIGGER APPS.INSERT_MEASUREMENT_TRIGGER^ test# CREATE or replace TRIGGER INSERT_MEASUREMENT_TRIGGER test-# BEFORE INSERT ON APPS.MEASUREMENT test-# FOR EACH ROW EXECUTE FUNCTION APPS.MEASUREMENT_INSERT_TRIGGER(); CREATE TRIGGER test# -- 插入数据 CREATE TABLE apps.measurement (city_id int not null,logdate date not null,peaktemp int,unitsales int );insert into apps.measurement values (1,date 2023-01-02,2,2); insert into apps.measurement values (2,date 2023-02-02,2,2); insert into apps.measurement values (3,date 2023-03-02,2,2); insert into apps.measurement values (4,date 2023-04-02,2,2); insert into apps.measurement values (5,date 2023-05-02,2,2); test# insert into apps.measurement values (1,date 2023-01-02,2,2); INSERT 0 0 test# insert into apps.measurement values (2,date 2023-02-02,2,2); INSERT 0 0 test# insert into apps.measurement values (3,date 2023-03-02,2,2); INSERT 0 0 test# insert into apps.measurement values (4,date 2023-04-02,2,2); INSERT 0 0 test# insert into apps.measurement values (5,date 2023-05-02,2,2); INSERT 0 0 test# -- 查看父表和各个分区表的数据 可以看到1个父表5个分区表 test# \dList of relationsSchema | Name | Type | Owner -----------------------------------------------apps | measurement | table | postgresapps | measurement_y2023m01 | table | postgresapps | measurement_y2023m02 | table | postgresapps | measurement_y2023m03 | table | postgresapps | measurement_y2023m04 | table | postgresapps | measurement_y2023m05 | table | postgresapps | persons | table | postgresapps | students | table | postgresapps | t1 | table | postgres (9 rows)test# test# select * from measurement;city_id | logdate | peaktemp | unitsales ------------------------------------------1 | 2023-01-02 | 2 | 22 | 2023-02-02 | 2 | 23 | 2023-03-02 | 2 | 24 | 2023-04-02 | 2 | 25 | 2023-05-02 | 2 | 2 (5 rows)test# test# select * from measurement_y2023m01;city_id | logdate | peaktemp | unitsales ------------------------------------------1 | 2023-01-02 | 2 | 2 (1 row)test# select * from measurement_y2023m02;city_id | logdate | peaktemp | unitsales ------------------------------------------2 | 2023-02-02 | 2 | 2 (1 row)test# select * from measurement_y2023m03;city_id | logdate | peaktemp | unitsales ------------------------------------------3 | 2023-03-02 | 2 | 2 (1 row)test# select * from measurement_y2023m04;city_id | logdate | peaktemp | unitsales ------------------------------------------4 | 2023-04-02 | 2 | 2 (1 row)test# select * from measurement_y2023m05;city_id | logdate | peaktemp | unitsales ------------------------------------------5 | 2023-05-02 | 2 | 2 (1 row)test# -- 插入2023年6月份的数据 直接报错 因为此时没有创建6月份的子表触发器函数中也没有处理6月份数据的规则 insert into apps.measurement values (1,date 2023-06-02,2,2); test# insert into apps.measurement values (1,date 2023-06-02,2,2); ERROR: Date out of range .Fix the apps.measurement_insert_trigger() function! CONTEXT: PL/pgSQL function measurement_insert_trigger() line 23 at RAISE test# -- 创建6月份分区表 修改触发器函数。使6月份的数据可以插入进去 CREATE TABLE apps.measurement_y2023m06 (CHECK ( logdate DATE 2023-06-01 AND logdate DATE 2023-07-01 )) INHERITS (measurement);CREATE OR REPLACE FUNCTION apps.measurement_insert_trigger() RETURNS TRIGGER AS $$ BEGINIF (NEW.logdate DATE 2023-01-01 AND NEW.logdate DATE 2023-02-01) THEN INSERT INTO apps.measurement_y2023m01 values (NEW.*);ELSIF (NEW.logdate DATE 2023-02-01 AND NEW.logdate DATE 2023-03-01) THEN INSERT INTO apps.measurement_y2023m02 values (NEW.*);ELSIF (NEW.logdate DATE 2023-03-01 AND NEW.logdate DATE 2023-04-01) THEN INSERT INTO apps.measurement_y2023m03 values (NEW.*);ELSIF (NEW.logdate DATE 2023-04-01 AND NEW.logdate DATE 2023-05-01) THEN INSERT INTO apps.measurement_y2023m04 values (NEW.*);ELSIF (NEW.logdate DATE 2023-05-01 AND NEW.logdate DATE 2023-06-01) THEN INSERT INTO apps.measurement_y2023m05 values (NEW.*); ELSIF (NEW.logdate DATE 2023-06-01 AND 新加入的规则NEW.logdate DATE 2023-07-01) THEN INSERT INTO apps.measurement_y2023m06 values (NEW.*);ELSE RAISE EXCEPTION Date out of range .Fix the apps.measurement_insert_trigger() function!;END IF;RETURN NULL; END; $$ LANGUAGE plpgsql; test# insert into apps.measurement values (1,date 2023-06-02,2,2); 插入6月份数据 INSERT 0 0 test# select * from measurement_y2023m06; 查询分区数据 city_id | logdate | peaktemp | unitsales ------------------------------------------1 | 2023-06-02 | 2 | 2 (1 row)test# -- 通过视图查看分区表查询不到基于继承建立的分区表 test# select * from pg_partitioned_table ;partrelid | partstrat | partnatts | partdefid | partattrs | partclass | partcollation | partexprs -------------------------------------------------------------------------------------------- (0 rows)test# --通过dt 命令查看建立的父表和子表 test# \dt apps.measurement*List of relationsSchema | Name | Type | Owner | Persistence | Access method | Size | Description ----------------------------------------------------------------------------------------------------apps | measurement | table | postgres | permanent | heap | 0 bytes | apps | measurement_y2023m01 | table | postgres | permanent | heap | 8192 bytes | apps | measurement_y2023m02 | table | postgres | permanent | heap | 8192 bytes | apps | measurement_y2023m03 | table | postgres | permanent | heap | 8192 bytes | apps | measurement_y2023m04 | table | postgres | permanent | heap | 8192 bytes | apps | measurement_y2023m05 | table | postgres | permanent | heap | 8192 bytes | apps | measurement_y2023m06 | table | postgres | permanent | heap | 8192 bytes | (7 rows)test# END
http://www.eeditor.cn/news/125795/

相关文章:

  • 建立企业网站的缺点上海市城乡住房建设厅网站
  • 响应式网站怎么做才实用阿里建站平台官网
  • 桔子建站官网南江县住房和城乡建设局网站
  • 网上网站代码可以下载吗深圳装饰企业前50强
  • 网站优化链接潍坊外贸网站制作
  • 有没有做ppt好看的免费网站深圳ppt设计公司
  • 北京平台网站建设哪家好php网站的特点
  • 20个外国平面设计网站建设网站都需要注意什么
  • 网站建好后广告是不是需要贵阳网站建设制作方法
  • 在百度上做网站推广效果怎么样男女一夜做受视频最新网站
  • 徐州网站制作苏视有什么好的加盟店项目
  • 网站建设技术服务公司购物小程序开发公司
  • 佛山外贸网站建设价位wordpress本地配置
  • 郑州网站建设 郑州网站制作福州医社保增减员在什么网站做
  • 英文网站建设 江门制作企业网站页面多少钱
  • 女孩做网站工作辛苦吗谷歌seo是啥
  • 网站建设图书馆管理系统WordPress添加CA
  • 教人做饮料的网站企业网络搭建毕业设计
  • 江东网站制作怎么做好邯郸网站建设
  • 网站制作技术人员低价网站建设哪个好
  • 网站速度对seo的影响全国建设工程造价管理系统
  • 做羊水亲子鉴定网站邢台市有几个区几个县
  • 站长查询站长工具网页编程入门
  • 开发一平方多少钱秦皇岛网络优化排名
  • 湖南专业外贸建站公司网站建设客户确认单
  • 蚌埠公司做网站公司名称大全免费取名
  • 阿里云服务器可以做几个网站电影资源网站建设
  • 网站开发专业课程软件工程师发展前景
  • 成功案例展示网站dedecms做网站教程
  • 做网站怎么配电脑低价网站建设哪家更好