Re: [pgbr-geral] migrar script mySQL para PostgreSQL

2007-06-15 Por tôpico Emanoel Tadeu

deu certo aqui, mas como ai dar erro ao se tentar incluir um valor que não
satisfaça a condição, terei q criar uma trigger q chame uma função para
colocar o valor em zero nesse caso. porém a trigger deve ser disparada antes
do insert/update correto?

Em 12/06/07, Osvaldo Rosario Kussama [EMAIL PROTECTED]
escreveu:


Emanoel Tadeu escreveu:
 Prezados,

 atualmente um sistema nosso aqui utiliza dois bancos de dados. Um mysql
 e outro postgresql. Recentemente chegmos a conclusão de que era melhor
 reunir tudo em um só banco,o postgresql. O mysql é utilizado em um data
 center que a empresa aluga, enquanto que o postgre é utilizado aqui
 mesmo com a empresa.

 Recebi somente os scripts das tabelas do mysql para gerar as mesmas no
 postgresql. no período em que estivermos realizando a migração, os dados
 que antes eram destinados somente ao mysql será colocado tambem no
 postgresql, para irmos testando aos poucos.

 Com isso, num create table em um script tem o seguinte:

 CLI_PRT1` smallint(5) unsigned NOT NULL default '0',

 Pesquisando sobre essa linha vi que unsigned não permite que valores
 abaixo de zero sejam inseridos. Por exemlo, caso se tente inserir o
 valor  -52, o valor de fato a ser inserido é zero.

 Como fazer isso de modo equivalente no postgresql? alguém pode me dar
 uma luz, por onde devo ir?



Para não permitir que sejam inseridos valores negativos utilize a
cláusula CHECK na definição do campo. Veja column_constraint em:
http://www.postgresql.org/docs/8.2/interactive/sql-createtable.html
mas esta opção dá erro ao se tentar incluir um valor que não satisfaça a
condição.

Para alterar o valor a ser inserido caso o valor fornecido não satisfaça
a uma dada condição (no caso = 0) utilize uma função/trigger no INSERT
e/ou UPDATE.
http://www.postgresql.org/docs/8.2/interactive/sql-createtrigger.html

[]s
Osvaldo
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral





--
--
Emanoel Tadeu
Analista de Sistemas
CheckRota - Rastreamento e Gestão de Frotas
(85) 3261-7982
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] migrar script mySQL para PostgreSQL

2007-06-14 Por tôpico Osvaldo Rosario Kussama

Emanoel Tadeu escreveu:

Prezados,

atualmente um sistema nosso aqui utiliza dois bancos de dados. Um mysql 
e outro postgresql. Recentemente chegmos a conclusão de que era melhor 
reunir tudo em um só banco,o postgresql. O mysql é utilizado em um data 
center que a empresa aluga, enquanto que o postgre é utilizado aqui 
mesmo com a empresa.


Recebi somente os scripts das tabelas do mysql para gerar as mesmas no 
postgresql. no período em que estivermos realizando a migração, os dados 
que antes eram destinados somente ao mysql será colocado tambem no 
postgresql, para irmos testando aos poucos.


Com isso, num create table em um script tem o seguinte:

CLI_PRT1` smallint(5) unsigned NOT NULL default '0',

Pesquisando sobre essa linha vi que unsigned não permite que valores 
abaixo de zero sejam inseridos. Por exemlo, caso se tente inserir o 
valor  -52, o valor de fato a ser inserido é zero.


Como fazer isso de modo equivalente no postgresql? alguém pode me dar 
uma luz, por onde devo ir?





Para não permitir que sejam inseridos valores negativos utilize a 
cláusula CHECK na definição do campo. Veja column_constraint em:

http://www.postgresql.org/docs/8.2/interactive/sql-createtable.html
mas esta opção dá erro ao se tentar incluir um valor que não satisfaça a 
condição.


Para alterar o valor a ser inserido caso o valor fornecido não satisfaça 
a uma dada condição (no caso = 0) utilize uma função/trigger no INSERT 
e/ou UPDATE.

http://www.postgresql.org/docs/8.2/interactive/sql-createtrigger.html

[]s
Osvaldo
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] migrar script mySQL para PostgreSQL

2007-06-14 Por tôpico Wallace Reis

On 6/11/07, Emanoel Tadeu [EMAIL PROTECTED] wrote:

Com isso, num create table em um script tem o seguinte:

CLI_PRT1` smallint(5) unsigned NOT NULL default '0',
Como fazer isso de modo equivalente no postgresql? alguém pode me dar uma
luz, por onde devo ir?


Veja esta thread[1]. Basicamente você tem duas opcões: um check
constraint ou um domain.

[1] http://www.mail-archive.com/[EMAIL PROTECTED]/msg68984.html

--
wallace reis/wreis
Núcleo de Biologia Computacional e
Gestão de Informações Biotecnológicas/LABBI
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] migrar script mySQL para PostgreSQL

2007-06-14 Por tôpico Joao
poderia fazer uma constraint check (campo 0)
  - Original Message - 
  From: Emanoel Tadeu 
  To: Comunidade PostgreSQL Brasileira 
  Sent: Monday, June 11, 2007 3:58 PM
  Subject: [pgbr-geral] migrar script mySQL para PostgreSQL


  Prezados,

  atualmente um sistema nosso aqui utiliza dois bancos de dados. Um mysql e 
outro postgresql. Recentemente chegmos a conclusão de que era melhor reunir 
tudo em um só banco,o postgresql. O mysql é utilizado em um data center que a 
empresa aluga, enquanto que o postgre é utilizado aqui mesmo com a empresa. 

  Recebi somente os scripts das tabelas do mysql para gerar as mesmas no 
postgresql. no período em que estivermos realizando a migração, os dados que 
antes eram destinados somente ao mysql será colocado tambem no postgresql, para 
irmos testando aos poucos. 

  Com isso, num create table em um script tem o seguinte:

  CLI_PRT1` smallint(5) unsigned NOT NULL default '0',

  Pesquisando sobre essa linha vi que unsigned não permite que valores abaixo 
de zero sejam inseridos. Por exemlo, caso se tente inserir o valor  -52, o 
valor de fato a ser inserido é zero. 

  Como fazer isso de modo equivalente no postgresql? alguém pode me dar uma 
luz, por onde devo ir?



--


  ___
  pgbr-geral mailing list
  pgbr-geral@listas.postgresql.org.br
  https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


[pgbr-geral] migrar script mySQL para PostgreSQL

2007-06-11 Por tôpico Emanoel Tadeu

Prezados,

atualmente um sistema nosso aqui utiliza dois bancos de dados. Um mysql e
outro postgresql. Recentemente chegmos a conclusão de que era melhor reunir
tudo em um só banco,o postgresql. O mysql é utilizado em um data center que
a empresa aluga, enquanto que o postgre é utilizado aqui mesmo com a
empresa.

Recebi somente os scripts das tabelas do mysql para gerar as mesmas no
postgresql. no período em que estivermos realizando a migração, os dados que
antes eram destinados somente ao mysql será colocado tambem no postgresql,
para irmos testando aos poucos.

Com isso, num create table em um script tem o seguinte:

CLI_PRT1` smallint(5) unsigned NOT NULL default '0',

Pesquisando sobre essa linha vi que unsigned não permite que valores abaixo
de zero sejam inseridos. Por exemlo, caso se tente inserir o valor  -52, o
valor de fato a ser inserido é zero.

Como fazer isso de modo equivalente no postgresql? alguém pode me dar uma
luz, por onde devo ir?
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral