1
我有一個包含用於創建數據庫的SQL命令的文件。使用psql自動創建數據庫
我也有一組單獨的文件,每個文件都包含用於創建函數的SQL命令。例如:
- funcs_algebra.sql
- funcs_trigonometry.sql
- funcs_geometry.sql
比方說我的主要SQLscript看起來是這樣的:
CREATE DATABASE mydb;
CREATE TABLE foo(id INT, name VARCHAR(32));
CREATE TABLE foobar(id INT, age REAL);
-- Commands below to import the functions in the separate files
-- funcs_algebra.sql
-- funcs_trigonometry.sql
-- funcs_geometry.sql
我想知道如何將這些文件包含在我的'主SQL'中,這樣我只有一個文件傳遞給psql。
目標是通過僅將psql中的命令傳遞給psql來使用psql創建數據庫(包含函數)。
任何人都知道如何?
[編輯]
我也許應該說我認爲是明顯的。我想在SEPARATE文件中保留函數相關的SQL,這樣我只有一個源可以修改。這是我分配邏輯和保存東西的一種方式DRY。
函數定義用於創建其他模板數據庫 - 所以我想將它們保存在單獨的文件中,但是引用來自我的SQL腳本中的文件。
我能想到的唯一的另一種方式是編寫一個bash腳本,它可以對psql進行連續調用 - 首先創建數據庫,然後添加函數 - 不是非常優雅,而不是非常幹。有另一種(更優雅)的方式嗎?
這就是我在找的東西!謝謝 – skyeagle 2010-12-16 09:40:43
儘管有一句話警告:這會使你的腳本在除psql外的任何內容中都不可用。 – 2010-12-16 09:47:59