-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSQLQuery1.sql
More file actions
67 lines (59 loc) · 2.02 KB
/
Copy pathSQLQuery1.sql
File metadata and controls
67 lines (59 loc) · 2.02 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
-- Tạo database nếu chưa có
CREATE DATABASE AsmJava5;
GO
USE AsmJava5;
-- Tạo bảng Users
CREATE TABLE Users (
id INT PRIMARY KEY IDENTITY(1,1),
name NVARCHAR(100) NOT NULL,
email NVARCHAR(100) UNIQUE NOT NULL,
password NVARCHAR(255) NOT NULL,
avatar NVARCHAR(255), -- Lưu đường dẫn file ảnh
bio NVARCHAR(500), -- Mô tả cá nhân
role BIT NOT NULL DEFAULT 1 -- 1: User, 0: Admin
);
-- Chèn dữ liệu mẫu
INSERT INTO Users (name, email, password, avatar, bio, role)
VALUES
('Trần Thị C', 'tranthic@example.com', 'pass456', 'avatars/user2.jpg', 'Yêu thích công nghệ AI', 1);
SELECT * FROM users ;
-- Tạo bảng Items
CREATE TABLE Items (
id INT PRIMARY KEY IDENTITY(1,1),
name NVARCHAR(100) NOT NULL,
price FLOAT NOT NULL,
qty INT NOT NULL,
image NVARCHAR(255),
seller NVARCHAR(100),
category NVARCHAR(50),
discount FLOAT DEFAULT 0,
sold INT DEFAULT 0
);
SELECT id, name, category FROM Items;
CREATE TABLE Categories (
id INT PRIMARY KEY IDENTITY(1,1),
name NVARCHAR(100) NOT NULL UNIQUE
);
-- Tạo bảng ItemOptions (Lưu các option của Item)
CREATE TABLE ItemOptions (
id INT PRIMARY KEY IDENTITY(1,1),
itemId INT NOT NULL,
optionValue NVARCHAR(255) NOT NULL,
FOREIGN KEY (itemId) REFERENCES Items(id) ON DELETE CASCADE
);
-- Tạo bảng ItemImages (Lưu nhiều ảnh của sản phẩm)
CREATE TABLE ItemImages (
id INT PRIMARY KEY IDENTITY(1,1),
itemId INT NOT NULL,
imageUrl NVARCHAR(255) NOT NULL,
FOREIGN KEY (itemId) REFERENCES Items(id) ON DELETE CASCADE
);
-- Chèn dữ liệu mẫu vào Items
INSERT INTO Items (name, price, qty, image, seller, category, discount, sold)
VALUES
('Laptop Dell XPS', 1500, 10, 'dell_xps.jpg', 'Dell Official', 'Laptops', 10, 100),
('iPhone 14', 1200, 15, 'iphone_14.jpg', 'Apple Store', 'Phones', 5, 200),
('Sony Camera', 800, 5, 'sony_camera.jpg', 'Sony Official', 'Cameras', 0, 50);
SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'ItemImages';