Olá amigos…
estou precisando de mais uma forcinha de vcs aqui em meu sistema…
Bom é o seguinte… .estou querendo colocar um vetor de String dentro de uma tabela no meu BD…
Pelo seguinte motivo… estou fazendo o cadastro de uma venda que foi realizada pelo usuário… eu pego os tipos de produtos selecionados… a descrição dos produtos… o preço total da venda e o código gerado para aquela venda…
Mas quando parei e pensei vi que ele estava criando uma linha para cada produto… e não estava cadastrando a venda como um todo…
Não sei se deu para os amigos entenderem?!?
Eu dou a opção de o usuário selecionar vários produtos para venda… ele seleciona… .vai tudo pra uma jTable… depois ele clica em realizar venda… ae eu quero fazer o cadastro dessa venda para uma futura pesquisa ou algo parecido…
Então gostaria de ter agrupados todos os itens que foram vendidos… sem ter uma linha para cada item…
Mas quando estou fazendo a chamada no método cadastrar de minha DAO não sei como vou fazer para setar o banco de dados… pois ele não aceita o comando sql.setString como no código abaixo: [code]
public void cadastrar (Venda v){
try {
sql=DAOFactoryPSQL.getConnection().prepareStatement("insert into venda values (?,?,?,?)");
sql.setString(1, v.getTipo());// ele dá erro aqui pois to tentando passar um vetor e esse método não aceita
sql.setString(2, v.getDescricao());// aqui também
sql.setString(3, v.getCodigoVenda());
sql.setString(4, v.getTotalVenda());
//executa o sql
sql.executeUpdate();
}
catch (Exception e){
JOptionPane.showMessageDialog(null,"Erro durante o cadastro da venda : "+e,"ERRO",JOptionPane.ERROR_MESSAGE);
}
}
[/code]
Então a questão é… como fazer para passar um vetor para meu banco de dados???
Isso é possível???
Se não é possível… como posso fazer para agrupar os dados de maneira que não venham a estar criando uma linha para cada produto:???
O código que estou utilizando é este galera : [code]public void gravaVenda(){
DAOFactory df=DAOFactory.getDAOFactory(DAOFactory.POSTGRES);
DAOVenda dao = df.getDAOVenda();
String dadosVenda[][] = new String[telaVenda.getRows()][telaVenda.getCell()];
dadosVenda = telaVenda.getDadosJTable();
int tam = telaVenda.getRows();
int i = 0;
String guardaTipos[] = null;
String guardaDescricao[] = null;
while (i<tam){
Venda v = new Venda();
String tipo = dadosVenda[i][0];
guardaTipos[i]=tipo;
String descricao = dadosVenda[i][1];
guardaDescricao [i] = descricao;
String codigoVenda = dadosVenda [i][2];
String totalVenda = dadosVenda[i][3];
v.setTipo(guardaTipos);
v.setDescricao(guardaDescricao);
v.setCodigoVenda(codigoVenda);
v.setTotalVenda(totalVenda);
dao.cadastrar(v);
i++;
}[/code]
Me ajudaaaaaaaaaaaaaaaaaaaaa ae galera… Um grande abraço a todos!!!