Tạo cơ sở dữ liệu trong MySQL dễ dàng như vậy. Một dòng là tất cả những gì nó cần. Trên thực tế, tôi thường mất nhiều thời gian hơn để nghĩ ra tên cho cơ sở dữ liệu so với việc tạo nó!
Mặc dù bạn chắc chắn có thể tạo cơ sở dữ liệu của mình thông qua MySQL Workbench GUI, nhưng bạn có thể sẽ thấy việc tạo chúng theo chương trình nhanh hơn bằng cách sử dụng CREATE DATABASE
tuyên bố.
CREATE DATABASE
Tuyên bố
Bạn có thể tạo cơ sở dữ liệu mới bằng cách sử dụng CREATE DATABASE
tuyên bố. Câu lệnh này là một phần của SQL, là ngôn ngữ có mục đích đặc biệt để truy vấn và lập trình cơ sở dữ liệu.
Cú pháp là CREATE DATABASE db_name
ở đâu db_name
là tên của cơ sở dữ liệu bạn muốn tạo.
Ví dụ:để tạo cơ sở dữ liệu có tên FruitShop
nhập nội dung sau vào Tab Truy vấn và chạy truy vấn:
CREATE DATABASE FruitShop;
Đó là tất cả những gì nó cần. SCHEMAS tab trong menu bên trái bây giờ sẽ hiển thị cơ sở dữ liệu của bạn:
Nếu bạn không thể thấy cơ sở dữ liệu của mình, hãy nhấp vào biểu tượng làm mới nhỏ bên cạnh SCHEMAS tiêu đề.
Bạn cũng có thể sử dụng lệnh sau để hiển thị danh sách cơ sở dữ liệu trên máy chủ:
SHOW DATABASES;
Nhưng tất nhiên, bây giờ bạn có một cơ sở dữ liệu trống. Bạn sẽ cần thêm bảng và chèn dữ liệu trước khi có cơ sở dữ liệu hoạt động đầy đủ. Chúng tôi sẽ sớm làm được điều đó.
CREATE SCHEMA
Tuyên bố
Bạn cũng có thể sử dụng CREATE SCHEMA
tuyên bố. Điều này sử dụng cùng một cú pháp, vì vậy câu lệnh trên có thể được viết lại thành sau:
CREATE SCHEMA FruitShop;
Sử dụng IF NOT EXISTS
Bạn có thể sử dụng IF NOT EXISTS
để ngăn lỗi xảy ra nếu cơ sở dữ liệu đã tồn tại. Đây là một ví dụ:
CREATE DATABASE IF NOT EXISTS FruitShop;
Sử dụng DROP DATABASE IF EXISTS
Sử dụng IF NOT EXISTS
ở trên là tuyệt vời miễn là bạn không có ý định thay thế cơ sở dữ liệu (và tất cả dữ liệu của nó) bằng một cơ sở dữ liệu mới. Nhưng đôi khi bạn có thể muốn xóa cơ sở dữ liệu cũ và bắt đầu lại từ đầu. Đây là nơi DROP DATABASE
có ích.
Bạn có thể sử dụng DROP DATABASE
để thả tất cả các bảng trong cơ sở dữ liệu và xóa cơ sở dữ liệu trước khi chạy CREATE DATABASE
tuyên bố. Bạn có thể kết hợp nó với IF EXISTS
để xác định rằng câu lệnh chỉ nên được thực thi nếu cơ sở dữ liệu hiện đang tồn tại. Điều này sẽ ngăn lỗi xảy ra nếu bạn cố gắng loại bỏ cơ sở dữ liệu không thực sự tồn tại.
Vì vậy, đây là những gì có thể trông như thế này:
DROP DATABASE IF EXISTS FruitShop; CREATE DATABASE FruitShop;
Giới thiệu về dấu chấm phẩy
Ví dụ trên sử dụng dấu chấm phẩy (;
) để đánh dấu phần cuối của mỗi câu lệnh. Các lệnh MySQL thường bao gồm một câu lệnh SQL theo sau là dấu chấm phẩy. Có một số ngoại lệ nhưng hầu hết các lệnh đều tuân theo quy ước này. Nếu bạn thấy rằng lệnh bạn viết không chạy, hãy kiểm tra xem bạn đã bao gồm dấu chấm phẩy sau mỗi câu lệnh chưa.
Thiết kế cơ sở dữ liệu
Trước khi tạo cơ sở dữ liệu, bạn cần suy nghĩ về thiết kế của nó. Bạn cần nghĩ về bảng và các đối tượng khác mà nó sẽ chứa, cũng như dữ liệu sẽ được lưu trữ trong cơ sở dữ liệu.
Trong thực tế, khi bạn tạo một cơ sở dữ liệu, bạn không chỉ tạo một cơ sở dữ liệu trống và sau đó nghĩ về những bảng nào sẽ đi vào nó sau này. Thông thường, bạn sẽ viết một tập lệnh tạo cơ sở dữ liệu và tất cả các bảng cũng như các đối tượng khác của nó cùng một lúc.
May mắn thay, làm điều này là khá đơn giản. Nó chỉ đơn giản là vấn đề kết hợp các câu lệnh SQL, cái khác, cho mỗi đối tượng bạn muốn tạo.
Chúng ta sẽ xem xét việc tạo bảng tiếp theo, nhưng hiện tại, đây là một ví dụ nhanh:
DROP DATABASE IF EXISTS FruitShop; CREATE DATABASE FruitShop; USE FruitShop; CREATE TABLE Fruit (FruitName VARCHAR(20), DateEntered DATETIME);
Đây là một ví dụ đơn giản tạo một cơ sở dữ liệu và một bảng trong cơ sở dữ liệu đó. Bạn có thể viết một đoạn script dài để tạo cơ sở dữ liệu và nhiều bảng cũng như các đối tượng cơ sở dữ liệu khác.
Bạn cũng có thể viết một tập lệnh khác điền vào các bảng với dữ liệu ban đầu được yêu cầu. Bạn thậm chí có thể kết hợp cả hai tập lệnh thành một nếu bạn muốn.
Quy ước đặt tên
Bạn nên giữ một quy ước đặt tên nhất quán. Bạn có thể gọi cơ sở dữ liệu FruitShop
(viết hoa tiêu đề), FRUITSHOP
(chữ hoa), fruitshop
(chữ thường), fruit_shop
(có dấu gạch dưới), v.v.
Một số người cũng thích tiền tố các đối tượng cơ sở dữ liệu của họ. Ví dụ:tiền tố bảng bằng tbl
hoặc tbl_
và các thủ tục được lưu trữ với sp
hoặc sp_
. Vì vậy, một bảng có thể được gọi là tblCustomers
hoặc tbl_customers
vv
Bạn cũng nên nghĩ về số nhiều. Bạn có gọi một bảng chứa tất cả hồ sơ khách hàng customer
không hoặc customer
. Nếu bạn chọn customer
, thì bạn cũng nên gọi một bảng chứa tất cả các sản phẩm products
chứ không phải product
.
Cho dù bạn chọn cách nào, bạn nên cố gắng duy trì cùng một quy ước trong toàn bộ cơ sở dữ liệu của mình.
Thiết lập quy ước đặt tên sẽ giúp ích rất nhiều khi bạn bắt đầu viết các truy vấn vào cơ sở dữ liệu của mình. Bạn sẽ không phải nhớ liệu mình đã đặt tên cho một bảng cụ thể bằng dấu gạch dưới, viết hoa tiêu đề, v.v. hay không, v.v.