Własności tabel

0

Mam dane następujące tabele. Wypełnione są rekordami.

--- Customer
    [CustCompanyName] [nvarchar](40) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
    [CustContactName] [nvarchar](30) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [CustContactTitle] [nvarchar](30) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [CustAddress] [nvarchar](60) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [CustCity] [nvarchar](15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,    
    [CustRegion] [nvarchar](15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [CustPostalCode] [nvarchar](10) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [CustCountry] [nvarchar](15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [CustPhone] [nvarchar](24) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [CustFax] [nvarchar](24) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,

---- Employees
    [EmpLastName] [nvarchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
    [EmpFirstName] [nvarchar](10) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
    [EmpTitle] [nvarchar](30) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [EmpTitleOfCourtesy] [nvarchar](25) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [EmpBirthDate] [datetime] NULL,
    [EmpHireDate] [datetime] NULL,
    [EmpAddress] [nvarchar](60) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [EmpCity] [nvarchar](15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [EmpRegion] [nvarchar](15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [EmpPostalCode] [nvarchar](10) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [EmpCountry] [nvarchar](15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [EmpHomePhone] [nvarchar](24) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [EmpPhoto] [image] NULL,
    [EmpExtension] [nvarchar](4) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [EmpNotes] [ntext] COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [EmpReportsTo] [int] NULL,
    [EmpPhotoPath] [nvarchar](255) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,

---- Order Details
    [OrdDetUnitPrice] [money] NOT NULL  DEFAULT (0),
    [OrdDetQuantity] [smallint] NOT NULL DEFAULT (1),
    [OrdDetDiscount] [real] NOT NULL  DEFAULT (0),


---- Orders
    [OrdOrderDate] [datetime] NULL,
    [OrdRequiredDate] [datetime] NULL,
    [OrdShippedDate] [datetime] NULL,
    [OrdShipVia] [int] NULL,
    [OrdFreight] [money] NULL  DEFAULT (0),
    [OrdShipName] [nvarchar](40) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [OrdShipAddress] [nvarchar](60) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [OrdShipCity] [nvarchar](15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [OrdShipRegion] [nvarchar](15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [OrdShipPostalCode] [nvarchar](10) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [OrdShipCountry] [nvarchar](15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    
--- Products
    [ProdProductName] [nvarchar](40) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
    [ProdQuantityPerUnit] [nvarchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [ProdUnitPrice] [money] NULL  DEFAULT (0),
    [ProdUnitsInStock] [smallint] NULL DEFAULT (0),
    [ProdUnitsOnOrder] [smallint] NULL  DEFAULT (0),
    [ProdReorderLevel] [smallint] NULL  DEFAULT (0),
    [ProdDiscontinued] [bit] NOT NULL  DEFAULT (0))

Potrzebuje zrobić następujące rzeczy, niestety nie rozumeim i nie mam pojęcia jak się do tego zabrać:

  1. Zamówienie może być wystawione dla klienta i przez pracownika;
  2. Jeden klient może wystawić wiele zamówień
  3. Jeden pracownik może wystawić wiele zamówień;
  4. Zamówienie może składać się z wielu pozycji zamówienia;
  5. Dla jednego produktu może być wystawionych wiele pozycji zamówień

Proszę o pomoc.

0

Zapewne chodzi o relacje ;)

0

Musze napisac skrypt tworzacy takie relacje. Najgorsze jest to ze nawet nie rozumiem jak by to mialo wygladac

0

Wiem jak stworzyć referencje i jak ją dodać tylko nie mam pojęcia które kolumny z których tabel połaczyć, aby spełnić te założenia (referencje z czego do czego)

1 użytkowników online, w tym zalogowanych: 0, gości: 1