Sobes.tech
Junior

რომელი მონაცემთა ბაზასთან მუშაობდით და როგორ ურთიერთქმედეთ მასთან?

sobes.tech AI

პასუხი AI-სგან

მუშაობდა:

  • SQL Server
  • PostgreSQL
  • MySQL
  • SQLite

ურთიერთქმედება განხორციელდა:

  1. ORM (Object-Relational Mapper): ძირითადად იყენებდა Entity Framework Core-ს მონაცემთა მისაღებად. ეს საშუალებას აძლევს მუშაობა მონაცემთა ბაზასთან C# ობიექტების გამოყენებით, ამცირებს SQL კოდის რაოდენობას და უზრუნველყოფს მეტ მოქნილობას.

    // მაგალითი Entity Framework Core-ის გამოყენებით
    using (var context = new MyDbContext())
    {
        var users = context.Users.Where(u => u.RegistrationDate > someDate).ToList();
        // მუშაობა მომხმარებლების კოლექციასთან
    }
    
  2. ADO.NET: უფრო დაბალ დონეზე ურთიერთქმედებისთვის მონაცემთა ბაზასთან, როდესაც საჭიროა ზუსტი კონტროლი SQL შეკითხვებზე ან მუშაობა მონაცემთა ბაზებთან, რომლებსათვის არ არსებობს მზად ORM.

    // მაგალითი ADO.NET-ის გამოყენებით 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();
            // მუშაობა count-თან
        }
    }
    
  3. მინი-ORM/მაპერები: პროექტებში, სადაც ORM-ი არ იყო ოპტიმალური გადაწყვეტილება (მაგალითად, მაღალი შესრულების ან სპეციფიკური მოთხოვნების გამო), იყენებდა Dapper-ის მსგავს ბიბლიოთეკებს.

    // Dapper-ის გამოყენების მაგალითი
    using (IDbConnection db = new SqlConnection(connectionString))
    {
        var projects = db.Query<Project>("SELECT ProjectName, StartDate FROM Projects WHERE EndDate IS NULL").ToList();
        // მუშაობა პროექტების კოლექციასთან
    }
    
  4. SQL შეკითხვები: დაწერდა T-SQL (SQL Server-ისთვის), PL/pgSQL (PostgreSQL-ისთვის) სპეციფიკური შეკითხვების, შენახული პროცედურების, ტრიგერების შექმნისთვის. ეს უმეტესად ხდებოდა მონაცემთა ბაზის მართვის ინსტრუმენტებით (SSMS, pgAdmin) ან ADO.NET/ORM-ის საშუალებით, ExecuteSqlRaw / FromSqlRaw გამოყენებით Entity Framework Core-ში.