Cơ sở dữ liệu H2 - Tạo
CREATE là một lệnh SQL chung được sử dụng để tạo Bảng, Lược đồ, Chuỗi, Chế độ xem và Người dùng trong máy chủ Cơ sở dữ liệu H2.
Tạo bảng
Tạo Bảng là một lệnh được sử dụng để tạo một bảng do người dùng xác định trong cơ sở dữ liệu hiện tại.
Cú pháp
Sau đây là cú pháp chung cho lệnh Tạo Bảng.
CREATE [ CACHED | MEMORY ] [ TEMP | [ GLOBAL | LOCAL ] TEMPORARY ]
TABLE [ IF NOT EXISTS ] name
[ ( { columnDefinition | constraint } [,...] ) ]
[ ENGINE tableEngineName [ WITH tableEngineParamName [,...] ] ]
[ NOT PERSISTENT ] [ TRANSACTIONAL ]
[ AS select ]
Bằng cách sử dụng cú pháp chung của lệnh Create Table, chúng ta có thể tạo các loại bảng khác nhau như bảng được lưu trong bộ nhớ cache, bảng bộ nhớ và bảng tạm thời. Sau đây là danh sách để mô tả các mệnh đề khác nhau từ cú pháp đã cho.
CACHED- Các bảng được lưu trong bộ đệm là loại mặc định cho các bảng thông thường. Điều này có nghĩa là số hàng không bị giới hạn bởi bộ nhớ chính.
MEMORY- Các bảng bộ nhớ là kiểu mặc định cho các bảng tạm thời. Điều này có nghĩa là các bảng bộ nhớ không được quá lớn và dữ liệu chỉ mục được giữ trong bộ nhớ chính.
TEMPORARY- Bảng tạm thời bị xóa trong khi đóng hoặc mở cơ sở dữ liệu. Về cơ bản, bảng tạm thời có hai loại -
Loại TOÀN CẦU - Có thể truy cập bằng mọi kết nối.
Loại địa phương - Có thể truy cập bằng kết nối hiện tại.
Kiểu mặc định cho các bảng tạm thời là kiểu toàn cục. Chỉ mục của bảng tạm thời được giữ trong bộ nhớ chính, trừ khi bảng tạm thời được tạo bằng cách sử dụng CREATE CACHED TABLE.
ENGINE - Tùy chọn ENGINE chỉ được yêu cầu khi triển khai bảng tùy chỉnh được sử dụng.
NOT PERSISTENT - Nó là một công cụ sửa đổi để giữ dữ liệu bảng hoàn chỉnh trong bộ nhớ và tất cả các hàng bị mất khi cơ sở dữ liệu bị đóng.
TRANSACTIONAL - Nó là một từ khóa cam kết một giao dịch mở và lệnh này chỉ hỗ trợ các bảng tạm thời.
Thí dụ
Trong ví dụ này, chúng ta hãy tạo một bảng có tên tutorial_tbl bằng cách sử dụng dữ liệu đã cho sau.
Sr.No | Tên cột dọc | Loại dữ liệu |
---|---|---|
1 | TÔI | Int |
2 | Tiêu đề | Varchar (50) |
3 | Tác giả | Varchar (20) |
4 | Ngày nộp hồ sơ | Ngày |
Truy vấn sau đây được sử dụng để tạo bảng tutorials_tbl cùng với dữ liệu cột đã cho.
CREATE TABLE tutorials_tbl (
id INT NOT NULL,
title VARCHAR(50) NOT NULL,
author VARCHAR(20) NOT NULL,
submission_date DATE
);
Truy vấn trên tạo ra kết quả sau.
(0) rows effected
Tạo lược đồ
Create Schema là một lệnh được sử dụng để tạo một lược đồ phụ thuộc vào người dùng theo một ủy quyền cụ thể (dưới người dùng hiện đã đăng ký).
Cú pháp
Sau đây là cú pháp chung của lệnh Create Schema.
CREATE SCHEMA [ IF NOT EXISTS ] name [ AUTHORIZATION ownerUserName ]
Trong cú pháp chung ở trên, AUTHORIZATION là một từ khóa được sử dụng để cung cấp tên người dùng tương ứng. Lệnh này là tùy chọn có nghĩa là nếu chúng tôi không cung cấp tên người dùng, thì nó sẽ xem xét người dùng hiện tại. Người dùng thực thi lệnh phải có quyền quản trị, cũng như chủ sở hữu.
Lệnh này thực hiện một giao dịch mở trong kết nối này.
Thí dụ
Trong ví dụ này, chúng ta hãy tạo một lược đồ có tên test_schema dưới người dùng SA, sử dụng lệnh sau.
CREATE SCHEMA test_schema AUTHORIZATION sa;
Lệnh trên tạo ra kết quả sau.
(0) rows effected
Tạo trình tự
Sequence là khái niệm được sử dụng để tạo một số bằng cách tuân theo một chuỗi cho id hoặc bất kỳ giá trị cột ngẫu nhiên nào.
Cú pháp
Sau đây là cú pháp chung của lệnh tạo chuỗi.
CREATE SEQUENCE [ IF NOT EXISTS ] newSequenceName [ START WITH long ]
[ INCREMENT BY long ]
[ MINVALUE long | NOMINVALUE | NO MINVALUE ]
[ MAXVALUE long | NOMAXVALUE | NO MAXVALUE ]
[ CYCLE long | NOCYCLE | NO CYCLE ]
[ CACHE long | NOCACHE | NO CACHE ]
Cú pháp chung này được sử dụng để tạo một chuỗi. Kiểu dữ liệu của một chuỗi làBIGINT. Trong trình tự này, các giá trị không bao giờ được sử dụng lại, ngay cả khi giao dịch được lùi lại.
Thí dụ
Trong ví dụ này, chúng ta hãy tạo một chuỗi có tên SEQ_ID, sử dụng truy vấn sau.
CREATE SEQUENCE SEQ_ID;
Truy vấn trên tạo ra kết quả sau.
(0) rows effected