<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>Olá muito bom dia.<br><br>Segui as recomendações que me indicou Alxandre e de facto a tabela das geometrias public.geometry_columns tinha registado duas entradas para a coluna da geometria.<br>Apaguei o registo com a geometria the_geom e agora apenas surge um registo ao adicionar a camada pelo qgis.<br><br>No entanto agora ao entrar em modo de edição não consigo alterar geometricamente a tabela surgindo a seguinte Mensagem de registo: "<br>Edição e adição desativadas para camada 2D+ (geom; "emarp"."agua_boca_rega") ".<br><br>Optei por tentar no postgis actualizar a dimensão da geometria:<br>ALTER TABLE emarp.agua_boca_rega ADD CONSTRAINT enforce_dims_geom CHECK (st_ndims(geom) = 4); <br><br>Mas surge a seguinte mensagem: <br><br>ERRO: restrição de verificação "enforce_dims_geom" foi violada por algum registro<br><br>********** Error **********<br><br>ERRO: restrição de verificação "enforce_dims_geom" foi violada por algum registro<br>SQL state: 23514<br><br><br>Como posso saber quais os registos que se encontram a violar "enforce_dims_geom" ?<br><br>Como posso começar a editar a geometria da tabela ?<br><br>Obrigado<br><br><br><br><br><br><br><br><br><br><br><div><hr id="stopSpelling">Date: Fri, 8 Aug 2014 20:56:35 +0100<br>From: senhor.neto@gmail.com<br>To: qgis-pt@lists.osgeo.org<br>Subject: Re: [QGIS-pt] coluna da geometria geom e the_geom<br><br><p dir="ltr">Boa tarde Carlos,</p>
<p dir="ltr">O postgis 1.5 funciona de uma maneira diferente do 2.x, não consigo experimentar criar essa tabela.</p>
<p dir="ltr">Acho que os dois problemas que enunciou na mailing list estão relacionados e surgem da tal existência em tempos de duas tabelas com exactamente o mesmo nome.</p>
<p dir="ltr">De alguma forma na tabela das geometrias devem lá existir dois registos, um com o geom e outro the_geom, embora na verdade já só exista uma das colunas.</p>
<p dir="ltr">Creio que o qgis lê a tabela das geometrias e lista as tabelas daí. Se uma tabela tiver duas colunas de geometria, então aparece duas vezes.</p>
<p dir="ltr">Sugiro que conhece por verificar o que está na tabela das geometrias.</p>
<p dir="ltr">Select * from public.geometry_columns where table_name = 'emarp.agua_boca_rega'</p>
<p dir="ltr">Depois, caso seja necessário elimine o registo (coluna de geometria) obsoleto.</p>
<p dir="ltr">Espero que tenha ajudado.</p>
<p dir="ltr">Alexandre Neto</p>
<div class="ecxgmail_quote">Em 08/08/2014 15:17, "Carlos Jacinto" <<a href="mailto:carlosjacinto@hotmail.com">carlosjacinto@hotmail.com</a>> escreveu:<br><blockquote class="ecxgmail_quote" style="border-left:1px #ccc solid;padding-left:1ex;">
<div><div dir="ltr">1- Pode dizer-nos qual a versão do Postgres e do Postgis que está a usar?<br><br>A tabela do tipo
PONTO encontra-se alojada em "PostgreSQL 8.4.3, compiled by Visual C++ build 1400, 32-bit"3 e a versão do Postgis é<br>"POSTGIS="1.5.1" GEOS="3.2.0-CAPI-1.6.0" PROJ="Rel. 4.6.1, 21 August 2008" LIBXML="2.7.6" USE_STATS".<br>
<br><br>2- Pode também facultar-nos todo o sql de contrução da tabela?<br><br>CREATE TABLE emarp.agua_boca_rega<br>(<br> abr_cod_old integer NOT NULL,<br> abr_desc character varying(254) DEFAULT 'Boca de Rega'::character varying,<br>
abr_dat_ano_insta smallint DEFAULT 1900,<br> abr_dat_ano_insta_obs text,<br> abr_dat_funci date DEFAULT '1900-01-01'::date,<br> abr_dat_funci_obs character varying(150),<br> abr_ciclo_vida text,<br> abr_est_conserv text,<br>
abr_reservatorio text,<br> abr_freg text,<br> abr_resp_lev text,<br> abr_font_info text,<br> abr_dat_lev date DEFAULT '1900-01-01'::date,<br> abr_dat_lev_obs character varying(100),<br> abr_tipo_proj text,<br>
abr_tipo_proj_obs character varying(250),<br> abr_obs character varying(254),<br> abr_caminho_cad character varying(254) DEFAULT 'N/A'::character varying,<br> abr_indice_proj character varying(50) DEFAULT 'N/A'::character varying,<br>
abr_arquivo_id integer DEFAULT 0,<br> abr_tracado_id numeric DEFAULT 0,<br> abr_cacifo character varying(150) DEFAULT 'N/A'::character varying,<br> abr_os_num smallint,<br> abr_os_dat date,<br> abr_os_tip_ord character varying(1),<br>
abr_artigo character varying(20),<br> abr_user_mod character varying(254),<br> abr_dat_mod timestamp without time zone,<br> abr_user character varying(254),<br> abr_dat timestamp without time zone DEFAULT now(),<br>
abr_entidade character varying(75),<br> abr_rotacao smallint,<br> geom geometry,<br> CONSTRAINT pkey_abr_cod PRIMARY KEY (abr_cod_old),<br> CONSTRAINT fkey_abr_ciclo_vida FOREIGN KEY (abr_ciclo_vida)<br> REFERENCES emarp.tab_ciclo_vida (tcv_cod) MATCH FULL<br>
ON UPDATE CASCADE ON DELETE RESTRICT,<br> CONSTRAINT fkey_abr_est_conserv FOREIGN KEY (abr_est_conserv)<br> REFERENCES emarp.tab_est_conserv (tec_cod) MATCH FULL<br> ON UPDATE CASCADE ON DELETE RESTRICT,<br>
CONSTRAINT fkey_abr_font_info FOREIGN KEY (abr_font_info)<br> REFERENCES emarp.tab_font_info (tfi_cod) MATCH FULL<br> ON UPDATE CASCADE ON DELETE RESTRICT,<br> CONSTRAINT fkey_abr_freg FOREIGN KEY (abr_freg)<br>
REFERENCES emarp.tab_freg (tfr_freguesia) MATCH FULL<br> ON UPDATE CASCADE ON DELETE RESTRICT,<br> CONSTRAINT fkey_abr_reservatorio FOREIGN KEY (abr_reservatorio)<br> REFERENCES emarp.agua_reservatorio (are_cod) MATCH FULL<br>
ON UPDATE CASCADE ON DELETE RESTRICT,<br> CONSTRAINT fkey_abr_resp_lev FOREIGN KEY (abr_resp_lev)<br> REFERENCES emarp.tab_resp_lev (trl_cod) MATCH FULL<br> ON UPDATE CASCADE ON DELETE RESTRICT,<br> CONSTRAINT fkey_abr_tipo_proj FOREIGN KEY (abr_tipo_proj)<br>
REFERENCES emarp.tab_tipo_proj (ttp_cod) MATCH FULL<br> ON UPDATE CASCADE ON DELETE RESTRICT,<br> CONSTRAINT constraint_abr_os_tip_ord CHECK (abr_os_tip_ord::text = 'C'::text OR abr_os_tip_ord::text = 'E'::text OR abr_os_tip_ord::text = 'I'::text),<br>
CONSTRAINT enforce_geotype_the_geom CHECK (geometrytype(geom) = 'POINT'::text OR geom IS NULL),<br> CONSTRAINT enforce_srid_the_geom CHECK (st_srid(geom) = 27492),<br> CONSTRAINT not_null_abr_font_info CHECK (abr_font_info IS NOT NULL),<br>
CONSTRAINT not_null_abr_freg CHECK (abr_freg IS NOT NULL),<br> CONSTRAINT not_null_abr_resp_lev CHECK (abr_resp_lev IS NOT NULL),<br> CONSTRAINT not_null_abr_tipo_proj CHECK (abr_tipo_proj IS NOT NULL)<br>)<br><br><br>
<br><br>3- A camada foi adicionada através da ferramenta de Adiccionar Camada(s) PosGIS disponibilizada pelo QGIS.<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><div><hr>Date: Fri, 8 Aug 2014 15:02:19 +0100<br>
From: <a href="mailto:senhor.neto@gmail.com" target="_blank">senhor.neto@gmail.com</a><br>To: <a href="mailto:qgis-pt@lists.osgeo.org" target="_blank">qgis-pt@lists.osgeo.org</a><br>Subject: Re: [QGIS-pt] coluna da geometria geom e the_geom<br>
<br><div dir="ltr">Boa tarde Carlos,<div><br></div><div>Pode dizer-nos qual a versão do Postgres e do Postgis que está a usar?</div><div><br></div><div>Pode também facultar-nos todo o sql de contrução da tabela?</div><div>
<br>
</div><div>Para finalizar, como adicionou a camada ao qgis?</div><div><br></div><div>Cumprimentos,</div><div><br></div><div>Alexandre Neto</div></div><div><br><br><div>2014-08-08 14:43 GMT+01:00 Carlos Jacinto <span dir="ltr"><<a href="mailto:carlosjacinto@hotmail.com" target="_blank">carlosjacinto@hotmail.com</a>></span>:<br>
<blockquote style="border-left:1px #ccc solid;padding-left:1ex;">
<div><div dir="ltr"><br><div>Boa tarde.<div><div><br><div dir="ltr"><br>Alguém me pode ajudar a perceber porque é que não consigo adicionar um novo elemento a uma tabela do tipo PONTO que se encontra alojada em PostGres?<br>
<br>A coluna da geometria está designada por "geom" e assim pretendia mantê-la. <br><br>No entanto quando altero o nome da coluna da geometria para "the_geom" o Qgis passa a permitir adicionar um novo elemento.<br>
<br><br>Estes sãos os constrangimentos presentes para a tabela:<br><br> CONSTRAINT agua_boca_rega_pkey PRIMARY KEY (gid),<br> CONSTRAINT enforce_dims_geom CHECK (st_ndims(geom) = 4),<br> CONSTRAINT enforce_geotype_geom CHECK (geometrytype(geom) = 'POINT'::text OR geom IS NULL),<br>
CONSTRAINT enforce_srid_geom CHECK (st_srid(geom) = 27492)<br><br><br>Obrigado,<br><br>Carlos Jacinto<br> </div></div></div></div> </div></div>
<br>_______________________________________________<br>
QGIS-pt mailing list<br>
<a href="mailto:QGIS-pt@lists.osgeo.org" target="_blank">QGIS-pt@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-pt" target="_blank">http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-pt</a><br>
<br></blockquote></div><br></div>
<br>_______________________________________________
QGIS-pt mailing list
<a href="mailto:QGIS-pt@lists.osgeo.org" target="_blank">QGIS-pt@lists.osgeo.org</a>
<a href="http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-pt" target="_blank">http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-pt</a></div> </div></div>
<br>_______________________________________________<br>
QGIS-pt mailing list<br>
<a href="mailto:QGIS-pt@lists.osgeo.org">QGIS-pt@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-pt" target="_blank">http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-pt</a><br>
<br></blockquote></div>
<br>_______________________________________________
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-pt</div> </div></body>
</html>