Sobes.tech
Junior — Middle

Como é que a ligação entre as tabelas na base de dados é implementada?

sobes.tech IA

Resposta da IA

A ligação entre tabelas numa base de dados é implementada através de chaves estrangeiras (foreign keys). Uma chave estrangeira é um campo (ou conjunto de campos) numa tabela que faz referência à chave primária de outra tabela. Isto garante a integridade dos dados e permite ligar registos entre tabelas.

Exemplo:

CREATE TABLE Customers (
    CustomerID INT PRIMARY KEY,
    Name VARCHAR(100)
);

CREATE TABLE Orders (
    OrderID INT PRIMARY KEY,
    OrderDate DATE,
    CustomerID INT,
    FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID)
);

Em C# usando ORM, como Entity Framework, as ligações são definidas através de propriedades de navegação e atributos ou Fluent API:

public class Customer
{
    public int CustomerID { get; set; }
    public string Name { get; set; }
    public ICollection<Order> Orders { get; set; }
}

public class Order
{
    public int OrderID { get; set; }
    public DateTime OrderDate { get; set; }
    public int CustomerID { get; set; }
    public Customer Customer { get; set; }
}

Assim, a relação um-para-muitos é implementada através de chave estrangeira e propriedades de navegação.