Skip to main content

1. Lý thuyết

Categories

Cấu trúc bảng

IdColumn NameData TypeNullKeyDefaultConstraint
1IdintPKAUTONUMBER
2Namenvarchar(50)UNIQUE
3Descriptionnvarchar(500)yes

Các câu lệnh DML

Insert data
INSERT INTO [dbo].[Categories] ([Name], [Description])
VALUES
(N'CPU', N'Chip xử lý'),
(N'Headphone', N'Tai nghe');
GO
Update data
UPDATE [dbo].[Categories]
SET [Description] = N'Điện thoại di động'
WHERE [Id] = 1;
GO
Delete data
DELETE FROM [dbo].[Categories]
WHERE [Id] = 1;
GO

Suppliers

Cấu trúc bảng

IdColumn NameData TypeNullKeyDefaultConstraint
1IdintPKAUTONUMBER
2Namenvarchar(100)
3Emailvarchar(50)UNIQUE
4PhoneNumbervarchar(50)UNIQUE
5Addressnvarchar(500)

Các câu lệnh DML

Insert data
INSERT INTO [dbo].[Suppliers] ([Name], [Email], [PhoneNumber], [Address])
VALUES
(N'SONY', 'contact@sony.com', '0123456788', N'Japan'),
(N'APPLE', 'contact@apple.com', '0123456789', N'USA'),
(N'SAMSUNG', 'contact@samsung.com', '321456765', N'Unknown');
GO
Update data
UPDATE [dbo].[Suppliers]
SET [Address] = N'Korea'
WHERE [Name] = N'SAMSUNG';
GO
Delete data
DELETE FROM [dbo].[Suppliers]
WHERE [Name] = N'SAMSUNG';
GO

Customers

Cấu trúc bảng

IdColumn NameData TypeNullKeyDefaultConstraint
1IdintPKAUTONUMBER
2FirstNamenvarchar(50)
3LastNamenvarchar(50)
4Emailvarchar(50)UNIQUE
5PhoneNumbervarchar(50)UNIQUE
6Addressnvarchar(500)
7Birthdaydatetimeyes

Các câu lệnh DML

Insert data
INSERT INTO [dbo].[Customers] (
[FirstName],
[LastName],
[Email],
[PhoneNumber],
[Address],
[Birthday]
)
VALUES
(N'Nguyễn', N'Văn A', 'a@gmail.com', '0123456789', N'Việt Nam', '1990-11-21'),
(N'Nguyễn', N'Văn B', 'b@gmail.com', '0123456788', N'Việt Nam', '1990-05-18');
GO
Update data
UPDATE [dbo].[Customers]
SET [Address] = N'Korea'
WHERE [FirstName] = N'Nguyễn' AND [LastName] = N'Văn B';
GO
Delete data
DELETE FROM [dbo].[Customers]
WHERE [Email] = 'a@gmail.com'
GO

Employees

Cấu trúc bảng

IdColumn NameData TypeNullKeyDefaultConstraint
1IdintPKAUTONUMBER
2FirstNamenvarchar(50)
3LastNamenvarchar(50)
4Emailvarchar(50)UNIQUE
5PhoneNumbervarchar(50)UNIQUE
6Addressnvarchar(500)
7Birthdaydatetimeyes

Các câu lệnh DML

Insert data
INSERT INTO [dbo].[Employees] (
[FirstName],
[LastName],
[Email],
[PhoneNumber],
[Address],
[Birthday]
)
VALUES
(N'Nguyễn', N'Văn A', 'aa@gmail.com', '0123456333', N'Việt Nam', '1990-11-22'),
(N'Trần', N'Thị B', 'bb@gmail.com', '0123456000', N'Việt Nam', '1990-10-01')
GO
Update data
UPDATE [dbo].[Employees]
SET [Address] = N'Korea'
WHERE [FirstName] = N'Nguyễn' AND [LastName] = N'Văn A';
GO
Delete data
DELETE FROM [dbo].[Employees]
WHERE [Email] = 'bb@gmail.com';
GO

Products

Cấu trúc bảng

IdColumn NameData TypeNullKeyDefaultConstraint
1IdintPKAUTONUMBER
2Namenvarchar(100)
3Pricemoneyn > 0
4Discountdecimal(18,2)00 <= n <= 90
5Stockdecimal(18,2)0n >= 0
6Descriptionnvarchar(max)yes
7CategoryIdintFKRefrence to Categories (Id)
8SupplierIdintFKRefrence to Suppliers (Id)

Các câu lệnh DML

Insert data
INSERT INTO [dbo].[Products] (
[Name],
[Price],
[Discount],
[Stock],
[Description],
[CategoryId],
[SupplierId]
)
VALUES
(N'Product 1', 100000, 10, 100, N'Product 1', 1, 1),
(N'Product 2', 200000, 20, 200, N'Product 2', 2, 2),
(N'Product 3', 300000, 30, 300, N'Product 3', 3, 3),
(N'Product 4', 400000, 40, 400, N'Product 4', 4, 4)
GO;
Update data
UPDATE [dbo].[Products]
SET [Description] = N'Product 1 updated'
WHERE [Name] = N'Product 1';
GO
Delete data
DELETE FROM [dbo].[Products]
WHERE [Name] = N'Product 1';
GO

Orders

Cấu trúc bảng

IdColumn NameData TypeNullKeyDefaultConstraint
1IdintPKAUTONUMBER
2CreatedDatedatetimeNOW
3ShippedDatedatetimeyesn < CreatedDate
4Statusvarchar(50)WAITINGn in [WAINTING, COMPLETED, CANCELED]
5Descriptionnvarchar(max)
6ShippingAddressnvarchar(500)yes
7ShippingCitynvarchar(50)
8PaymentTypevarchar(20)CASHn in [CASH, CREDIT CARD]
9CustomerIdintFKRefrence to Customers (Id)
10EmployessIdintFKRefrence to Employees (Id)

Các câu lệnh DML

Insert data
INSERT INTO [dbo].[Orders] (
[CreatedDate],
[ShippedDate],
[Status],
[Description],
[ShippingAddress],
[ShippingCity],
[PaymentType],
[CustomerId],
[EmployessId]
)
VALUES
(GETDATE(), GETDATE(), 'WAITING', N'Order 1', N'Address 1', N'City 1', 'CASH', 1, 1),
(GETDATE(), GETDATE(), 'WAITING', N'Order 2', N'Address 2', N'City 2', 'CASH', 2, 2),
(GETDATE(), GETDATE(), 'WAITING', N'Order 3', N'Address 3', N'City 3', 'CASH', 3, 3),
(GETDATE(), GETDATE(), 'WAITING', N'Order 4', N'Address 4', N'City 4', 'CASH', 4, 4);
GO
Update data
UPDATE [dbo].[Orders]
SET [Description] = N'Order 1 updated'
WHERE [Id] = 1;
GO
Delete data
DELETE FROM [dbo].[Orders]
WHERE [Id] = 1;
GO

Order Details

Cấu trúc bảng

IdColumn NameData TypeNullKeyDefaultConstraint
1OrderIdintPK + FKRefrence to Orders (Id)
2ProductIdintPK + FKRefrence to Products (Id)
3Quantitydecimal(18,2)n > 0
4Pricedecimal(18,2)n > 0
5Discountdecimal(18,2)0 <= n <=90

Các câu lệnh DML

Insert data
INSERT INTO [dbo].[OrderDetails] (
[OrderId],
[ProductId],
[Quantity],
[Price],
[Discount]
)
VALUES
(4, 4, 4, 1, 30, 5);
GO
Update data
UPDATE [dbo].[OrderDetails]
SET [Quantity] = 2
WHERE [OrderId] = 1 AND [ProductId] = 1;
GO
Delete data
DELETE FROM [dbo].[OrderDetails]
WHERE [OrderId] = 1 AND [ProductId] = 1;
GO