Sobes.tech
Junior

Com que base de dados trabalhou e de que forma interagiu com ela?

sobes.tech IA

Resposta da IA

Trabalhei com:

  • SQL Server
  • PostgreSQL
  • MySQL
  • SQLite

A interação foi realizada através de:

  1. ORM (Object-Relational Mapper): Utilizei principalmente Entity Framework Core para aceder aos dados. Isto permite trabalhar com a base de dados usando objetos C#, reduzindo a quantidade de código SQL escrito e proporcionando maior flexibilidade.

    // Exemplo de uso do Entity Framework Core
    using (var context = new MyDbContext())
    {
        var users = context.Users.Where(u => u.RegistrationDate > someDate).ToList();
        // Trabalho adicional com a coleção users
    }
    
  2. ADO.NET: Para uma interação de nível mais baixo com a base de dados, quando é necessário um controlo preciso sobre as consultas SQL ou quando se trabalha com bases de dados sem ORM.

    // Exemplo de uso do ADO.NET com SQL Server
    string connectionString = "Server=myServer;Database=myDb;User Id=myUser;Password=myPassword;";
    using (SqlConnection connection = new SqlConnection(connectionString))
    {
        connection.Open();
        string sql = "SELECT COUNT(*) FROM Users WHERE IsActive = @isActive";
        using (SqlCommand command = new SqlCommand(sql, connection))
        {
            command.Parameters.AddWithValue("@isActive", true);
            int count = (int)command.ExecuteScalar();
            // Trabalho adicional com count
        }
    }
    
  3. Mini-ORM / data mappers: Em projetos onde o ORM não era a melhor solução (por exemplo, por necessidade de alta performance ou consultas específicas), utilizei bibliotecas como Dapper.

    // Exemplo de uso do Dapper
    using (IDbConnection db = new SqlConnection(connectionString))
    {
        var projects = db.Query<Project>("SELECT ProjectName, StartDate FROM Projects WHERE EndDate IS NULL").ToList();
        // Trabalho adicional com a coleção projects
    }
    
  4. Consultas SQL: Escrevi T-SQL (para SQL Server), PL/pgSQL (para PostgreSQL) para executar consultas específicas, criar procedimentos armazenados, triggers, etc. Isto era geralmente feito através de ferramentas de gestão de bases de dados (SSMS, pgAdmin) ou via ADO.NET/ORM usando ExecuteSqlRaw / FromSqlRaw no Entity Framework Core.