0
我试图解析pg_dump文件,以使对象拥有单个文件,使它更容易开发和维护。如何解析pg_dump所有类型的对象到它自己的文件?像函数,表,视图,索引等
这里有一个例子:
--
-- Name: u_id; Type: DEFAULT; Schema: sc_udccockpit; Owner: udccockpit
--
ALTER TABLE ONLY alarmentity
ADD CONSTRAINT alarmentity_pkey PRIMARY KEY (u_id);
--
-- Name: alarmstring_pkey; Type: CONSTRAINT; Schema: sc_udccockpit; Owner: udccockpit; Tablespace:
--
ALTER TABLE ONLY alarmentity
ADD CONSTRAINT alarmentity_f_active_description_id_fkey FOREIGN KEY (f_active_description_id) REFERENCES alarmstring(u_id);
--
-- Name: alarmentity_f_model_description_id_fkey; Type: FK CONSTRAINT; Schema: sc_udccockpit; Owner: udccockpit
--
ALTER TABLE ONLY alarmentity
ADD CONSTRAINT alarmentity_f_model_description_id_fkey FOREIGN KEY (f_model_description_id) REFERENCES alarmstring(u_id);
--
-- Name: alarmentity_f_module_id_fkey; Type: FK CONSTRAINT; Schema: sc_udccockpit; Owner: udccockpit
--
ALTER TABLE ONLY alarmentity
ADD CONSTRAINT alarmentity_f_module_id_fkey FOREIGN KEY (f_module_id) REFERENCES alarmstring(u_id);
--
-- Name: alarmentity_f_node_name_id_fkey; Type: FK CONSTRAINT; Schema: sc_udccockpit; Owner: udccockpit
--
ALTER TABLE ONLY alarmentity
ADD CONSTRAINT alarmentity_f_node_name_id_fkey FOREIGN KEY (f_node_name_id) REFERENCES alarmstring(u_id);
--
-- Name: alarmentity_f_resource_id_id_fkey; Type: FK CONSTRAINT; Schema: sc_udccockpit; Owner: udccockpit
--
ALTER TABLE ONLY alarmentity
ADD CONSTRAINT alarmentity_f_resource_id_id_fkey FOREIGN KEY (f_resource_id_id) REFERENCES alarmstring(u_id);
我想改变它,例如: 文件:alarmentity_pkey.sql和它只有像
--
-- Name: u_id; Type: DEFAULT; Schema: sc_udccockpit; Owner: udccockpit
--
ALTER TABLE ONLY alarmentity
ADD CONSTRAINT alarmentity_pkey PRIMARY KEY (u_id);
内容我想我想要的是: 以“仅改变表格”开头 以“;”结尾 包括“CONSTRAINT”,“PRIMARY” 提取“CONSTRAINT”和“PRIMARY”之间的词作为文件名。