Array em um banco de dados

5 respostas
J

Galera, eu sou novato em java, e estou com um problema e gostria que vocês me ajudassem.
É seguinte: no meu banco tem um campo “fone character varying(10)[]” quanto tendo recuperar as informações desse campo é que surge o pro…
se eu usar o comando: resultset.getArray(“fone”) , blz ele retorna todos os valores, mas se eu quizer pegar o 1º item de desse array o que eu tenho que fazer?

Agradeço de puderem me ajudar!!

5 Respostas

A

Cara,

não ficaria melhor se vc tratasse esse campo fone como uma tabela do seu banco.

t+

J

Esse campo é para guarda os num de contato de um cliente, se eu usar uma tabela não tornaria mais complicado a atualizaçao de contato do cliente?

A

entao,
se vc tiver usando algum framework, tipo hibernate, ele ja faz isso automatico para vc,
caso vc esteja usando jdbc,
toda vez q vc atualizasse o cliente, vc apagaria os contatos dele e inseriria os que pegou no formulario.

t+

rmendes08
Object [] telefones = resultset.getArray("fone");

String telefonePrincipal = (String) telefones[0];

A leitura de um campo do banco de dados é atômica, assim como um campo.

Vale a pena estudar um pouco sobre modelo relacional. Você vai ver, que de acordo com a 1a Forma Normal, os campos de uma tabela devem ser monovalorados, pois assim você sempre chega em um único valor a partir de um valor da PK.

A modelagem mais interessante é essa que o companheiro citou. Você cria uma segunda tabela somente para guardar os telefone, algo como CLIENTE_TELEFONE( ID_CLIENTE, TELEFONE ), sendo que os 2 campos devem fazer parte da PK.

machitte

e ai galera tudo bem com vi ente post e estou com um problema parecido com o dos nosso amigo …

bom tenho um array de string e gostaria de gravar e depois resgatar do banco
garvo normalmente depois uso o getarray para buscar a coluna que desejo ???

se alguem puder dar um força eu agradeco…

Criado 19 de setembro de 2011
Ultima resposta 4 de out. de 2011
Respostas 5
Participantes 4