How does this class work?

Asked

Viewed 202 times

-4

DataSet
OleDbConnection
OleDbCommand
OleDbDataAdapter
OleDbDataReader

I still can not understand this class in .net. What are these datasets and etc? I’m wearing this:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
using System.Data.OleDb;

The class is like this:

public class AcessoDAL
{
public AcessoDAL()
{
}

protected static IDbConnection CriaConexaoOleDb()
{
    String sConecta = (String)System.Configuration.ConfigurationManager.AppSettings["Conexao"];
    OleDbConnection conexaoOLEDB;
    conexaoOLEDB = new OleDbConnection(sConecta);
    conexaoOLEDB.Open();
    return conexaoOLEDB;
}

protected static OleDbDataReader cria_DataReader_OleDb(String sSQL, OleDbConnection conecOledb)
{
    OleDbCommand comando = new OleDbCommand(sSQL, conecOledb);
    OleDbDataReader dr = comando.ExecuteReader(CommandBehavior.CloseConnection);
    comando.Dispose();
    return dr;
}

protected static OleDbDataReader cria_DataReader_OleDb(String sSQL)
{
    String sConecta = (String)System.Configuration.ConfigurationManager.AppSettings["Conexao"];
    OleDbConnection conexaoOLEDB;
    conexaoOLEDB = new OleDbConnection(sConecta);
    conexaoOLEDB.Open();
    OleDbCommand comando = new OleDbCommand(sSQL, conexaoOLEDB);
    OleDbDataReader dr = comando.ExecuteReader(CommandBehavior.CloseConnection);
    comando.Dispose();
    return dr;
}

protected static OleDbDataAdapter cria_DataAdapter_OleDb(String sSQL, OleDbConnection conecOledb)
{
    OleDbDataAdapter da = new OleDbDataAdapter(sSQL, conecOledb);
    DataSet ds = new DataSet();
    da.Fill(ds);
    return da;
}

protected static DataSet cria_DataSet_OleDb(String sSQL, OleDbConnection conecOledb)
{
    OleDbDataAdapter da = new OleDbDataAdapter(sSQL, conecOledb);
    DataSet ds = new DataSet();
    da.Fill(ds);
    return ds;
}

protected static DataSet cria_DataSet_OleDb(OleDbDataAdapter da)
{
    DataSet ds = new DataSet();
    da.Fill(ds);
    return ds;
}

protected static OleDbCommand cria_Command_OleDb(String sSQL, OleDbConnection conecOledb)
{
    OleDbCommand comando = conecOledb.CreateCommand();
    comando.CommandText = sSQL;
    comando.CommandType = CommandType.Text;
    return comando;
}


protected static OleDbCommand cria_Command_OleDb(String sSQL, OleDbConnection conecOledb, CommandType TipoComando)
{
    OleDbCommand comando = conecOledb.CreateCommand();
    comando.CommandText = sSQL;
    comando.CommandType = TipoComando;
    return comando;
}

}

  • 2

    Your doubt is relatively general. It may be worth a visit to the MSDN website: https://msdn.microsoft.com/pt-br/library/system.data.dataset(v=vs.110). aspx

  • Maybe I should pay a course then. Because I read some things and still can’t understand.

  • You can deny the question The will I don’t care.

  • 1

    Maybe a visit to 'Get Started' (http://www.asp.net/get-started) will make a difference in your life.

  • 1

    Hi Aline. Well, your question is fair, but it could be better formatted. You could post, for example, a small chunk of the rest of the code where this class is used (and certainly this chunk exists, because this class must be something that you found in a code that you’re keeping, right?). I’m no expert on C#, but this class seems to provide generic access to a database. Its use should be clearer by even observing snippets of code in which it is actually used.

  • 2

    I understand it’s frustrating to get negative votes, but in my opinion you shouldn’t "not care". This type of comment will only attract more negative votes and will not help you. Try to edit the question to improve it. :)

  • 1

    The question is too wide, the problem is the class in which aspect? The DAL? The concepts of access to the data layer of . net? The commands are relatively simple, someone simply centralized the basic commands for access to the data layer. Open connection, read data, etc. This in an implementation specifies OLE pair. Even so, there is no way to teach all this in a response.

  • Right. I have doubts about everything, I did not understand anything kkkkkkkkkkkkkkkkkkk. So I will pay for a course of c# net then I can ask a better question.

  • Yes, the same DAL class. My doubt is with that class.

Show 4 more comments

1 answer

2


I hope that the comments and references used can help you to better understand.

public class AcessoDAL
{
    //Construtor da classe sem parâmetros.
    //Não há necessidade desse construtor pois os seus métodos são estáticos,
    //ou seja, não precisa instanciar o objeto para acessar.
    public AcessoDAL()
    {
    }

    //Cria uma conexão com o banco de dados
    protected static IDbConnection CriaConexaoOleDb()
    {
        ///Pega a string de conexão no arquivo de configuração do sistema.
        ///Se for MVC um Web.config, se for um desktop um App.config
        String sConecta = (String)System.Configuration.ConfigurationManager.AppSettings["Conexao"];
        OleDbConnection conexaoOLEDB;
        ///Cria um novo objeto para a conexão com o banco de dados
        ///com a string de conexão obtida do arquivo de configuração
        conexaoOLEDB = new OleDbConnection(sConecta);
        ///Realiza a abertura da conexão com o banco de dados
        conexaoOLEDB.Open();
        ///Retorna o objeto responsável pela conexão com o banco de dados
        return conexaoOLEDB;
    }

    //Retorna um DataReader para o comando SQL executado.
    //Utilizado com um Comando SELECT * FROM tableA
    //Referência: https://msdn.microsoft.com/pt-br/library/haa3afyz(v=vs.110).aspx
    //            https://msdn.microsoft.com/pt-br/library/system.data.sqlclient.sqldatareader(v=vs.110).aspx
    protected static OleDbDataReader cria_DataReader_OleDb(String sSQL, OleDbConnection conecOledb)
    {
        ///Cria um novo objeto responsável por executar o camando
        ///SQL no banco de dados
        OleDbCommand comando = new OleDbCommand(sSQL, conecOledb);
        ///Executa o comando solicitando um DAtaReader como retorno e pedindo para fechar a conexão no término.
        OleDbDataReader dr = comando.ExecuteReader(CommandBehavior.CloseConnection);
        ///Libera os recursos utilizados pelo objeto
        comando.Dispose();
        ///Retorna o objeto DataReader obtido com as informações da consulta SQL
        return dr;
    }

    //Retorna um DataReader para o comando SQL executado.
    //Uma alternativa ao método acima, sem a necessidade de passar a conexão,
    //pois a mensa é criada dentro do método.
    //Utilizado com um Comando SELECT * FROM tableA
    //Referência: https://msdn.microsoft.com/pt-br/library/haa3afyz(v=vs.110).aspx
    //            https://msdn.microsoft.com/pt-br/library/system.data.sqlclient.sqldatareader(v=vs.110).aspx
    protected static OleDbDataReader cria_DataReader_OleDb(String sSQL)
    {
        ///Pega a string de conexão no arquivo de configuração do sistema.
        ///Se for MVC um Web.config, se for um desktop um App.config
        String sConecta = (String)System.Configuration.ConfigurationManager.AppSettings["Conexao"];
        OleDbConnection conexaoOLEDB;
        ///Cria um novo objeto para a conexão com o banco de dados
        ///com a string de conexão obtida do arquivo de configuração
        conexaoOLEDB = new OleDbConnection(sConecta);
        ///Realiza a abertura da conexão com o banco de dados
        conexaoOLEDB.Open();
        ///Cria um novo objeto responsável por executar o camando
        ///SQL no banco de dados
        OleDbCommand comando = new OleDbCommand(sSQL, conexaoOLEDB);
        ///Executa o comando solicitando um DAtaReader como retorno e pedindo para fechar a conexão no término.
        OleDbDataReader dr = comando.ExecuteReader(CommandBehavior.CloseConnection);
        ///Libera os recursos utilizados pelo objeto
        comando.Dispose();
        ///Retorna o objeto DataReader obtido com as informações da consulta SQL
        return dr;
    }

    //Cria um DataAdapter. Geralmente utilizado para preencher um DataSet
    //Referência: https://msdn.microsoft.com/pt-br/library/bh8kx08z(v=vs.110).aspx
    //            https://msdn.microsoft.com/pt-br/library/system.data.common.dataadapter(v=vs.110).aspx
    protected static OleDbDataAdapter cria_DataAdapter_OleDb(String sSQL, OleDbConnection conecOledb)
    {
        ///Cria um novo DataAdapter utilizando um comando SQL e uma conexão com o bando
        OleDbDataAdapter da = new OleDbDataAdapter(sSQL, conecOledb);
        ///Cria um novo objeto DataSet
        DataSet ds = new DataSet();
        ///Preenche o DataSet (Sem motivos pois o mesmo não é utilizado)
        da.Fill(ds);
        ///Retorna o DataAdapter criado
        return da;
    }

    //Cria um DataSet com as informações resultantes da consulta SQL executada
    //Referência: https://msdn.microsoft.com/pt-br/library/bh8kx08z(v=vs.110).aspx
    //            https://msdn.microsoft.com/pt-br/library/system.data.common.dataadapter(v=vs.110).aspx
    protected static DataSet cria_DataSet_OleDb(String sSQL, OleDbConnection conecOledb)
    {
        ///Cria um novo DataAdapter utilizando um comando SQL e uma conexão com o bando
        OleDbDataAdapter da = new OleDbDataAdapter(sSQL, conecOledb);
        ///Cria um novo objeto DataSet
        DataSet ds = new DataSet();
        ///Preenche o DataSet, agora sim com motivo
        da.Fill(ds);
        ///Retorna o DataSet
        return ds;
    }

    //Cria um DataSet utilizando o DataAdapter passado como parâmetro
    //Referência: https://msdn.microsoft.com/pt-br/library/bh8kx08z(v=vs.110).aspx
    //            https://msdn.microsoft.com/pt-br/library/system.data.common.dataadapter(v=vs.110).aspx
    protected static DataSet cria_DataSet_OleDb(OleDbDataAdapter da)
    {
        ///Cria o objeto DataSet
        DataSet ds = new DataSet();
        ///Preenche o DataSet com o DataAdapter recebido
        da.Fill(ds);
        ///Retorna o DataSet preenchido
        return ds;
    }

    //Cria um objeto Command para a exeução de um comando SQL
    //Referência: http://www.macoratti.net/09/04/c_adn_3.htm
    //            https://msdn.microsoft.com/pt-br/library/system.data.sqlclient.sqlcommand(v=vs.110).aspx
    protected static OleDbCommand cria_Command_OleDb(String sSQL, OleDbConnection conecOledb)
    {
        ///Cria o objeto Command com base na conexão
        OleDbCommand comando = conecOledb.CreateCommand();
        ///Informa o comando SQL para ser executado
        comando.CommandText = sSQL;
        ///Define o tipo de comando como Text
        comando.CommandType = CommandType.Text;
        ///Retorna o objeto Command
        return comando;
    }

    //Cria um objeto Command para a exeução de um comando SQL
    //Referência: http://www.macoratti.net/09/04/c_adn_3.htm
    //            https://msdn.microsoft.com/pt-br/library/system.data.sqlclient.sqlcommand(v=vs.110).aspx
    protected static OleDbCommand cria_Command_OleDb(String sSQL, OleDbConnection conecOledb, CommandType TipoComando)
    {
        ///Cria o objeto Command com base na conexão
        OleDbCommand comando = conecOledb.CreateCommand();
        ///Informa o comando SQL para ser executado
        comando.CommandText = sSQL;
        ///Define o tipo do comando de acordo com o tipo recebido por parâmetro
        comando.CommandType = TipoComando;
        ///Retorna o objeto Command
        return comando;
    }
}

Browser other questions tagged

You are not signed in. Login or sign up in order to post.