我正在自己的服务器上安装 nominatim,使用以下指导http://wiki.openstreetmap.org/wiki/Nominatim/Installation...
但我在向 pgsql DB 添加国家短语/代码时遇到了问题。我使用上面链接中给出的以下命令执行此操作:
psql -d nominatim -f specialphrases_countries.sql
但是,我收到以下错误:
psql:specialphrases_countries.sql:1: ERROR: function make_standard_name(unknown) does not exist
LINE 1: select getorcreate_country(make_standard_name('uk'), 'gb');
^
HINT: No function matches the given name and argument types. You might need to add explicit type casts.
psql:specialphrases_countries.sql:2: ERROR: function make_standard_name(unknown) does not exist
LINE 1: select getorcreate_country(make_standard_name('united states...
^
HINT: No function matches the given name and argument types. You might need to add explicit type casts.
psql:specialphrases_countries.sql:3: ERROR: relation "country_name" does not exist
LINE 1: ...e_standard_name(country_code), country_code) from country_na...
^
psql:specialphrases_countries.sql:4: ERROR: relation "country_name" does not exist
LINE 1: ...try_name.name,ARRAY['name'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:5: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:af'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:6: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:ar'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:7: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:br'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:8: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:ca'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:9: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:cs'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:10: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:de'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:11: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:en'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:12: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:es'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:13: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:et'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:14: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:eu'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:15: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:fa'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:16: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:fi'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:17: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:fr'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:18: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:gl'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:19: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:hr'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:20: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:hu'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:21: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:ia'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:22: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:is'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:23: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:it'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:24: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:ja'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:25: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:mk'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:26: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:nl'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:27: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:no'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:28: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:pl'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:29: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:ps'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:30: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:pt'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:31: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:ru'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:32: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:sk'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:33: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:sv'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:34: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:uk'])), country_code) from country_na...
^
psql:specialphrases_countries.sql:35: ERROR: relation "country_name" does not exist
LINE 1: ..._name.name,ARRAY['name:vi'])), country_code) from country_na...
^
我不知道什么是“make_standard_name(unknown)”,如何创建它来解决“错误:函数make_standard_name(unknown)不存在”...
请提出建议。
答案1
函数 make_standard_name(text) 通过安装过程中的下一步添加到数据库中:http://wiki.openstreetmap.org/wiki/Nominatim/Installation#Import_and_index_OSM_data
如果缺少此功能,则说明错过了该步骤或该步骤中发生了错误。您需要成功运行它,然后才能导入额外的国家名称数据。