01/10/2018, 17:18

Cách kết nối các bảng trong SQL

Mình đang làm bài tập SQL Server!

Ai biết cho mình hỏi với là:
Mình có 4 bảng Máy bay, nhân viên, chứng nhận, chuyến bay. Giờ có bảng CHUNGNHAN là có khoá phụ của hai bảng NHANVIENMAYBAY rồi!

Thì mình có thể gọi đến và lấy thông tin của hai bảng kia được?
Giờ mình muốn lấy thông tin của bảng CHUYENBAY thì phải làm thế nào?
Làm sao để cho bảng CHUYENBAY liên kết được với các bảng còn lại?

Do bảng CHUYENBAY không có trường liên kết với các bảng khác.

create table NHANVIEN (
  MaNV char(9) primary key,
  Ten varchar(50) NOT NULL,
  Luong int default 500000
);

create table CHUNGNHAN (
  MaNV char(9) foreign key (MaNV) references NHANVIEN(MaNV),
  MaMB int foreign key (MaMB) references MAYBAY(MaMB),
);

create table CHUYENBAY (
  MaCB char(5) primary key,
  Gadi varchar(50) NOT NULL,
  Gaden varchar(50) NOT NULL,
  Dodai int default 20000,
  Giodi time NOT NULL,
  Gioden time NOT NULL,
  Chiphi int default 150000,
);

create table MAYBAY (
  MaMB int primary key,
  Hieu varchar(50) NOT NULL,
  Tambay int
);
Trương Tấn Phát viết 19:24 ngày 01/10/2018

Chuyến bay sao lại không có trường nào liên kết với máy bay hết thế kia!? Thế thì bay bằng gì? Ít nhất cũng phải có mã máy bay ở bảng chuyến bay chứ nhỉ.

Minh Anh Vũ viết 19:23 ngày 01/10/2018

Bài nó cho các trường như thế mà bạn ! Thế nên mình mới phải đi hỏi

Trương Tấn Phát viết 19:21 ngày 01/10/2018

Thêm MaMB vào bảng CHUYENBAY và tham chiếu khóa ngoại qua bảng MAYBAY.

create table CHUYENBAY(
...
MaMB int foreign key (MaMB) references MAYBAY(MaMB)
);

Đơn giản thế mờ

Minh Anh Vũ viết 19:31 ngày 01/10/2018

Bài ko cho mình cũng tự được thêm ak

Trương Tấn Phát viết 19:34 ngày 01/10/2018

Ai ra đề kì vậy, chuyến bay mà không có máy bay thì cho hành khách đi bộ à . Ít nhất cũng có cái gì tham chiếu giữa CHUYENBAY và MAYBAY chứ. Không được thêm hay bớt bất cứ gì à? Thế thì thua, người ra đề nên xem lại.
Hoặc là bạn chưa hiểu kĩ đề.

Minh Anh Vũ viết 19:30 ngày 01/10/2018

Bài nó chỉ nói thêm là : Một máy bay chỉ có thể thực hiện các chuyến bay có độ dài đường bay nhỏ hơn tầm bay của máy bay đó. !

vũ xuân quân viết 19:21 ngày 01/10/2018

Tốt nhất là đưa đề lên, để anh em còn chỉ giúp. Đưa cấu trúc bảng vậy khó biết câu trả lời đúng được.

Minh Anh Vũ viết 19:26 ngày 01/10/2018

0123

HK boy viết 19:26 ngày 01/10/2018

merged and moved by noname00

Minh Anh Vũ viết 19:33 ngày 01/10/2018

Mong Cac bac xem Giup minh

Minh Anh Vũ viết 19:26 ngày 01/10/2018

Mong Bac xem giup !!! Thank bac

Hung viết 19:31 ngày 01/10/2018

Sao bạn không tự viết mà lại đăng ảnh liên tục thế nhỉ?
Mình sửa #1 cho bạn rồi mà bạn lại tiếp tục đăng ảnh nữa

Bạn dành một chút thời gian cho câu hỏi thì nhận được câu trả lời tương xứng.


Và đây là quyết định, từ giờ đến trưa mai (thứ 7 ngày 1/9), nếu bạn không chuyển sang text như #1 thì mình sẽ close topic và hide toàn bộ các topic được đăng lại có nội dung copy từ bài này sang.


Cách tạo table bằng markdown
https://www.tablesgenerator.com/markdown_tables

Minh Anh Vũ viết 19:35 ngày 01/10/2018

Do mấy bạn trên yêu cầu đăng câu hỏi thì mình chỉ chụp và dăng câu hỏi thôi ! và mình có hỏi mấy bạn ấy là mỗi cái câu làm sao để kết nối cái bảng chuyến bay như ở trên thôi ! Chứ có hỏi hết đâu mà bạn

Trương Tấn Phát viết 19:19 ngày 01/10/2018

Xem ra bài này chỉ là những câu hỏi thôi mà. Mục đích là yêu cầu bạn sử dụng các lệnh SQL để truy vấn CSDL để thỏa câu hỏi đề ra. Thế mà tưởng làm đồ án web hay ứng dụng gì chứ.

vũ xuân quân viết 19:28 ngày 01/10/2018

Trong đề bài có yêu cầu tạo khóa.
Vậy giờ mình tạo bảng liên kết giữa chuyến bay và máy bay. Đây là bảng quan hệ nhiều nhiều. Căn cứ vào độ dài của chuyến đi và độ dài máy bay có thể bay để liên kết.
Tạo xong bảng này rồi thì mấy câu truy vấn này bạn có thể làm được.
Mình chỉ đề xuất như vậy.

Bài liên quan
0