如果在Windows或Linux上运行,是否可以在postgresql中进行检测?还是可以对表空间创建进行回退? 目前适用于Windows:
CREATE TABLESPACE foo_bar LOCATION 'C:\foo_bar_tablespace';
我要使用类似的东西
IF onWindows THEN
CREATE TABLESPACE foo_bar LOCATION 'C:\foo_bar_tablespace';
ELSE
CREATE TABLESPACE foo_bar LOCATION '/var/lib/postgresql/data/foo_bar_tablespace';
END IF;
这有可能吗?
答案 0 :(得分:2)
如果您是超级用户,那么一种安全的方式来判断您是否在Windows上,路径名称以大写字母开头,后跟“:\”将是:
SELECT current_setting('data_directory') SIMILAR TO '[A-Z]:\\%' AS is_windows;