none
Conexão com banco RRS feed

  • Pergunta

  • Dúvidas quanto a uma classe para inserir no banco. Criei um método(estou criando) e esse método decerá fazer todos os inserts necessários. Isso é para evitar que tenha um insert pra cada tabela. Eu tenho um view que traz as colunas da tabela que eu vou inserir. Essas colunas, eu as coloco no values do insert. Aí me deparei com os seguintes problemas:

    1) Preciso carregar em vetor de 255 posições, essas colnas. Coloquei 255 porque esse é um projeto da fasul e não terei tabelas com mais de 255 posições. Talvez até diminua o tamnho do vetor. Eu preciso declarar esse vetor e depois carregar com as informações.

    2) Após carregado o vetor, precisarei descarregar no meu insert, ou seja, atribuir a cada valor no values ao campo que vem do vetor. seria assim:

    Insert into minha_table(campos_vindo_vetor) values(valores_a_serem_inseridos); Deu pra entender? Gostaria de fazer assim e não sei como. Grato a todos.

    quinta-feira, 3 de junho de 2010 16:00

Todas as Respostas

  • Criei a função no banco que me retorna as colunas. Agora como eu faço isso, ou seja, carregar em um vetor ou algo parecido as colunas e depois ir descarregando no meu insert?
    quinta-feira, 3 de junho de 2010 18:05
  • Eis a minha tentativa de fazer. Aqui está o esqueleto da minha classe. Eu preciso colocar nela as conexões ao banco, executar a função e no retorno dela, preencher a minha lista com o result dessa função.

    using System;
    /// <summary>
    /// Summary description for Class1
    /// </summary>
    public class Tools_Connect
    {
    private String tabela;
    private String[] campos;
    public void Insere_Registro(String tbl){
    String[] campos = new String[128];
    sql_geral = "select column_name from information_schema.columns where table_name = " + tbl;
    String sql = "Insert into " + tbl + " values(" + metodo_coluna() + ")";
    }
    public Tools_Connect()
    {
    //
    // TODO: Add constructor logic here
    //
    }
    }

     

     

     

    quinta-feira, 3 de junho de 2010 18:14
  • Ficou pequena, mandei de novo

    Eis a minha tentativa de fazer. Aqui está o esqueleto da minha classe. Eu preciso colocar nela as conexões ao banco, executar a função e no retorno dela, preencher a minha lista com o result dessa função.

    using

     

    System;

    ///

     

    <summary>

    ///

     

    Summary description for Class1

    ///

     

    </summary>

    public

     

    class Tools_Connect

    {

     

    private String tabela;

     

    private String[] campos;

     

    public void Insere_Registro(String tbl){

     

    String[] campos = new String[128];

     

    String sql = "Insert into " + tbl + " values(" + metodo_coluna() + ")";

    }

     

    public Tools_Connect()

    {

     

    //

     

    // TODO: Add constructor logic here

     

    //

    }

    }

    quinta-feira, 3 de junho de 2010 18:15
  • metodo_coluna() é uma função que traz os valores já formatado??

    msn: poseidonfba@hotmail.com
    quinta-feira, 3 de junho de 2010 18:50
  • Isso, só não está implementada ainda, pois é aí que reside o meu problema. Devo também criar a minha conexão no banco
    quinta-feira, 3 de junho de 2010 18:52
  • mais vc quer retonar o nome de todos os campos da tabela tbl para que?

    msn: poseidonfba@hotmail.com
    quinta-feira, 3 de junho de 2010 18:58
  • Como eu disse, preciso fazer alguns inserts. Como eu não quero criar um insert para cada tabela que for preciso, quero criar um método que me traga as colunas de determinadas tabelas, coloco no insert e alimento o values com os valores das variáveis e insiro. Eu como trabalho em delphi, eu faço assim em meus programas. Fica um único método para insert, um para delete e outro para update. Os códigos ficam bem mais limpos. Eu não sei se existe também uma forma de inserir direto na tabela pelos campos que estão no form. Em Delphi, existe essa possibilidade, quando se trabalha com DBEdit e etc, basta dar um post que grava, pois esses componentes estão ligados a um datasource.
    quinta-feira, 3 de junho de 2010 20:09
  • Entendi, então no caso do insert vc deseja fazer desta forma abaixo, é isso?

     

    String sql = "Insert into " + tbl + " (" + colunas_tabela() + ") values(" + valores_inclusao() + ")";


    msn: poseidonfba@hotmail.com
    quinta-feira, 3 de junho de 2010 20:15