Tiêu chuẩn Quốc gia TCVN 11167-7:2015 ISO/IEC 7816-7:1999 Thẻ định danh-Thẻ mạch tích hợp-Phần 7: Lệnh liên ngành đối với ngôn ngữ truy vấn thẻ có cấu trúc (SCQL)

  • Thuộc tính
  • Nội dung
  • Tiêu chuẩn liên quan
  • Lược đồ
  • Tải về
Mục lục Đặt mua toàn văn TCVN
Lưu
Theo dõi văn bản

Đây là tiện ích dành cho thành viên đăng ký phần mềm.

Quý khách vui lòng Đăng nhập tài khoản LuatVietnam và đăng ký sử dụng Phần mềm tra cứu văn bản.

Báo lỗi
  • Báo lỗi
  • Gửi liên kết tới Email
  • Chia sẻ:
  • Chế độ xem: Sáng | Tối
  • Thay đổi cỡ chữ:
    17
Ghi chú

Tiêu chuẩn Việt Nam TCVN 11167-7:2015

Tiêu chuẩn Quốc gia TCVN 11167-7:2015 ISO/IEC 7816-7:1999 Thẻ định danh-Thẻ mạch tích hợp-Phần 7: Lệnh liên ngành đối với ngôn ngữ truy vấn thẻ có cấu trúc (SCQL)
Số hiệu:TCVN 11167-7:2015Loại văn bản:Tiêu chuẩn Việt Nam
Cơ quan ban hành: Bộ Khoa học và Công nghệLĩnh vực: Khoa học-Công nghệ, Thông tin-Truyền thông
Ngày ban hành:31/12/2015Hiệu lực:
Đã biết

Vui lòng đăng nhập tài khoản để xem Ngày áp dụng. Nếu chưa có tài khoản Quý khách đăng ký tại đây!

Người ký:Tình trạng hiệu lực:
Đã biết

Vui lòng đăng nhập tài khoản gói Tiêu chuẩn hoặc Nâng cao để xem Tình trạng hiệu lực. Nếu chưa có tài khoản Quý khách đăng ký tại đây!

Tình trạng hiệu lực: Đã biết
Ghi chú
Ghi chú: Thêm ghi chú cá nhân cho văn bản bạn đang xem.
Hiệu lực: Đã biết
Tình trạng: Đã biết

TIÊU CHUẨN QUỐC GIA

TCVN 11167-7:2015

ISO/IEC 7816-7:1999

THẺ ĐỊNH DANH - THẺ MẠCH TÍCH HỢP - PHẦN 7: LỆNH LIÊN NGÀNH ĐỐI VỚI NGÔN NGỮ TRUY VẤN THẺ CÓ CẤU TRÚC (SCQL)

Identification cards - Integrated circuit cards - Part 7: Interindustry commands for Structured Card Query Language (SCQL)

Lời nói đầu

TCVN 11167-7:2015 hoàn toàn tương đương với ISO/IEC 7816-7:1999.

TCVN 11167-7:2015 do Tiểu Ban kỹ thuật tiêu chuẩn quốc gia TCVN/JTC 1/SC 17 “Thẻ nhận dạng” biên soạn, Tng cục Tiêu chuẩn Đo lường Chất lượng đề nghị, Bộ Khoa học và Công nghệ công bố.

Bộ tiêu chuẩn TCVN 11167 (ISO/IEC 7816) Thẻ định danh - Thẻ mạch tích hợp gồm các tiêu chuẩn sau:

- Phần 1: Thẻ tiếp xúc - Đặc tính vật lý;

- Phần 2: Thẻ tiếp xúc - Kích thước và vị trí tiếp xúc;

- Phần 3: Thẻ tiếp xúc - Giao diện điện và giao thức truyền;

- Phần 4: Tổ chức, an ninh và lệnh trao đi;

- Phần 5: Đăng ký của bên cung cấp ứng dụng;

- Phần 6: Phần tử dữ liệu liên ngành trong trao đổi;

- Phần 7: Lệnh liên ngành đối với ngôn ngữ truy vấn thẻ có cấu trúc;

- Phần 8: Lệnh đối với hoạt động an ninh;

- Phần 9: Lệnh đối với quản lý thẻ;

- Phần 10: Tín hiệu điện và trả lời đ thiết lập lại cho thẻ đồng bộ;

- Phần 11: Xác minh cá nhân bằng phương pháp sinh trắc học;

- Phần 12: Th tiếp xúc - Thủ tục vận hành và giao diện điện tử USB;

- Phần 13: Lệnh đối với quản lý ứng dụng trong môi trường đa ứng dụng;

- Phần 15: ng dụng thông tin mã hóa.

 

THẺ ĐỊNH DANH - THẺ MẠCH TÍCH HỢP - PHN 7: LỆNH LIÊN NGÀNH ĐỐI VỚI NGÔN NGỮ TRUY VN THẺ CÓ CU TRÚC

Identification cards - Integrated circuit cards with contacts - Part 7: Interindustry commands for structured card query language (SCQL)

1. Phạm vi áp dụng

Tiêu chuẩn này quy định:

- Khái niệm cơ sở dữ liệu SCQL (SCQL = Ngôn ngữ truy vấn thẻ có cấu trúc dựa trên SQL, xem ISO 9075)

- Lệnh liên ngành mở rộng liên quan.

2. Tài liệu viện dẫn

Các tài liệu viện dẫn sau rt cần thiết cho việc áp dụng tiêu chuẩn này. Đối với các tài liệu viện dẫn ghi năm công bố thì áp dụng phiên bản được nêu. Đối với các tài liệu viện dẫn không ghi năm công bố thì áp dụng phiên bản mới nhất, bao gồm cả các sửa đổi, bổ sung (nếu có).

TCVN 11.167-4 (ISO/IEC 7816-4) Th định danh - Thẻ mạch tích hợp - Phần 4: T chức, an ninh và lệnh trao đổi,

TCVN 11167-6 (ISO/IEC 7816-6) Thẻ định danh - Thẻ mạch tích hợp - Phần 6: Phần tử dữ liệu liên ngành trong trao đổi,

ISO/IEC 9075:1992, Information technology - Database languages - SQL2 (Công nghệ thông tin - Ngôn ngữ cơ sở dữ liệu - SQL2).

3. Thuật ngữ và định nghĩa

Tiêu chuẩn này áp dụng các định nghĩa sau.

3.1. Người sử dụng cơ sở dữ liệu (database basic user)

Người sử dụng SCQL mà không có các quyền đi kèm.

3.2. Tệp cơ sở dữ liệu (database file)

Tập đối tượng cơ sở dữ liệu có cấu trúc (bảng, hiển thị, từ điển) biểu diễn nội dung của cơ sở dữ liệu.

3.3. Ch đối tượng cơ sở dữ liệu (database object owner)

Người sử dụng SCQL với quyền: tạo, bỏ bớt các đối tượng và quản lý các đặc quyn về các đối tượng này.

3.4. Ch cơ sở dữ liệu (database owner)

Người sử dụng SCQL ban đầu quản lý các đối tượng và người sử dụng cơ sở dữ liệu.

3.5. Từ điển (dictionary)

Hiển thị trên bảng hệ thống.

3.6. Bng hệ thống (system table)

Bảng được duy trì bi thẻ nhằm quản lý cấu trúc cơ sở dữ liệu và truy cập cơ sở dữ liệu.

3.7. Bảng (table)

Đối tượng cơ s dữ liệu với tên duy nht và định rõ trong các cột và các hàng.

3.8. Hin thị (view)

Tập con có logic của bảng.

4. Thuật ngữ viết tắt và ký hiệu

Tiêu chuẩn này áp dụng các thuật ngữ viết tắt sau.

Thuật ngữ

Tiếng Anh

Tiếng Việt

APDU

Application protocol data unit

Đơn vị dữ liệu giao thức ứng dụng

API

Application programming interface

Giao diện lập trình ứng dụng

DB

Database

Cơ sở dữ liệu

DB_O

Database owner

Ch cơ sở dữ liệu

DBBU

Database basic user

Người sử dụng cơ s dữ liệu cơ sở

DBF

Database file

Tệp cơ sở dữ liệu

DBOO

Database object owner

Chủ đối tượng cơ sở dữ liệu

DF

Dedicated file

Tệp dành riêng

DO

Data object

Đối tượng dữ liệu

ICC

Integrated circuit(s) card

Thẻ mạch tích hợp

IFD

Interface device

Thiết bị giao diện

MF

Master file

Tệp chủ

SCQL

Structured card query language

Ngôn ngữ truy vấn thẻ có cấu trúc

SQL

Structured query language

Ngôn ngữ truy vn có cấu trúc

TLV

Tag, length, value

Thẻ, độ dài, giá trị

5. Khái niệm cơ sở dữ liệu SCQL

5.1. Cơ sở dữ liệu SCQL

Cơ sở dữ liệu theo tiêu chuẩn này được gọi là cơ sở dữ liệu SCQL (SCQL = Ngôn ngữ truy vấn thẻ có cấu trúc), các lệnh truy cập dựa trên chức năng SQL (xem ISO 9075) và được mã hóa theo các nguyên tắc của các lệnh liên ngành được quy định trong TCVN 11167-4 (ISO/IEC 7816-4). Bản thân cơ sở dữ liệu là tập đối tượng dữ liệu có cấu trúc được gọi là tệp cơ sở dữ liệu DBF. Theo DF phải có nhiều hơn một DBF có thể được truy cập sau khi lựa chọn DF tương ứng. Cơ sở dữ liệu cũng có th được đính kèm trực tiếp với MF.

Hình 1 trình bày một ví dụ về việc gắn cơ sở dữ liệu trong thẻ.

Hình 1 - ng dụng với cơ sở dữ liệu trong th đang làm việc (ví dụ)

Hệ thống ứng dụng có thể phi hợp hoạt động với cơ sở dữ liệu SQL cũng như với cơ sở dữ liệu SCQL sử dụng cùng SQL-API (API = Giao diện lập trình ứng dụng). Do đó, thẻ chứa cơ sở dữ liệu SCQL có thể xuất hiện là một phần của môi trường cơ sở dữ liệu SQL phân tán. Hình 2 trình bày cấu hình SQL điển hình với thẻ tích hợp trong thiết kế hệ thống.

Hình 2 - Cơ sở dữ liệu SCQL là một phần của môi trường cơ sở dữ liệu SQL phân tán (ví dụ)

5.2. Bảng SCQL

Cơ sở dữ liệu SCQL chứa các đối tượng đưc gọi là: bảng, hiển thị và từ điển. Mỗi đối tượng có thể được tham chiếu bởi mã định danh duy nhất.

Bảng là đối tượng dữ liệu có cấu trúc với tên duy nhất trong cơ sở dữ liệu, bao gồm các cột có tên và chuỗi các hàng. Số hàng có thể không giới hạn (tức là chỉ hạn chế bởi không gian nhớ có sẵn trong thẻ) hoặc có giới hạn. Bảng và các đặc tính chính được thể hiện trong Hình 3.

Hình 3 - Bảng SCQL (ví dụ) và các đặc tính chính của nó

Sau khi liên tục tạo cu trúc bảng, tức là cột hiện có không thể được hủy b hoặc cột mới không được thêm vào. Các hoạt động sau đây có thể được biểu diễn trên bảng:

- Đọc (lựa chọn)

- Chèn

- Cập nhật

- Xóa

5.3. Hiển thị SCQL

Hiển thị là tập con của bảng, quy định phần bng có thể truy cập. Có hai loại hiển thị sau được phân biệt:

- Hiển thị (xem Hình 4) gắn các cột truy cập được gọi là hiển thị tĩnh trong ngữ cảnh này và

- Hiển th (xem Hình 5) hạn chế truy cập đến các hàng mà nội dung của chúng phù hợp với các điều kiện (ví dụ: đến các hàng có có giá trị lớn hơn ‘20’) được gọi là hiển th động trong ngữ cnh này.

Hình 4 - Hiển th tĩnh SCQL (ví dụ)

Hình 5 - Hiển th động SCQL (ví dụ)

Sự kết hợp của hiển thị tĩnh và hiển thị động trong cùng định nghĩa hiển thị cũng có thể xảy ra.

Hiển thị ging như một bảng có tên duy nhất trong cơ sở dữ liệu SCQL. Một vài hiển thị có thể được xác định trên cùng một bảng.

Các hoạt động sau đây có thể được trình bày trên một hiển thị:

- Đọc (lựa chọn)

- Cập nhật.

5.4. Bảng và từ điển hệ thống SCQL

Bảng hệ thống được duy trì bởi thẻ và chứa thông tin cần thiết để quản lý cấu trúc và truy cập cơ sở dữ liệu. Có ba bảng hệ thống:

- Bảng mô tả đối tượng (tên ‘O’)

- Bảng mô tả người sử dụng (tên ‘U’)

- Bảng mô tả đặc quyền (tên ‘P’)

Bảng mô tả đối tượng chứa thông tin về các bảng và hiển thị lưu trữ trong cơ sở dữ liệu.

Bảng mô tả người sử dụng chứa thông tin về người sử dụng truy cập đến cơ sở dữ liệu.

Bảng mô tả đặc quyền chứa thông tin v đặc quyền theo các bng và hiển thị trên cơ sở dữ liệu. Đặc quyền mô tả các bảng và hiển thị được người sử dụng truy cập và các hoạt động được người sử dụng thực hiện trên bảng hay hiển thị tương ứng.

Các Hình từ 6 đến 8 chỉ ra các bảng hệ thống với các cột bắt buộc.

Hình 6 - Bảng mô tả đối tượng

Hình 7 - Bảng mô tả người sử dụng

Hình 8 - Bảng mô tả đặc quyền

Đối với việc truy cập thông tin có trong bảng hệ thống, các hiển thị trên bảng hệ thống này có thể được tạo ra. Hiển thị trên bảng hệ thống được gọi là từ đin SCQL. Hoạt động mà người sử dụng ch có thể thực hiện trên từ điển là đọc (lựa chọn).

5.5. Hồ sơ người sử dụng SCQL

Hồ sơ người sử dụng SCQL được miêu tả bởi các quyền hạn đặc biệt. Hồ sơ người sử dụng được đính kèm với mã định danh người sử dụng được lưu trữ trong bảng mô tả người sử dụng. Bảng 1 trình bày các hồ sơ và quyền hạn đính kèm.

Bảng 1 - H sơ người sử dụng SCQL và các quyn hạn

Hồ sơ

Người sử dụng

Quyn hạn

DB_O

Chủ của cơ sở dữ liệu

- Thêm/b bớt người sử dụng với h sơ DBOO hoặc DBBU

- Tạo/xóa các đối tượng (bảng/hin th)

- Cấp/thu hồi các đặc quyền về đối tượng sở hữu

- Tạo/xóa các từ điển truy cập đến tt cả các hàng trong bảng hệ thống

- Truy cập đến các đối tượng không sở hu theo các đặc quyền được cp

DBOO

Ch của đối tượng cơ sở dữ liệu

- Thêm/bỏ bớt người sử dụng với hồ sơ DBBU

- Tạo/xóa các đối tượng (bảng/hin thị)

- Cấp/thu hồi các đặc quyền v đối tượng s hữu

- Tạo/xóa các từ điển truy cập đến các hàng ở đó DBOO được đăng ký là OBJOWN trong *O, USROWN trong *U hoặc OBJOWN trong *P

- Truy cập đến các đối tượng không s hu theo các đặc quyền được cp

DBBU

Người sử dụng cơ sở dữ liệu với id người sử dụng cụ th hoặc id người sử dụng chung

- Truy cập đến các đối tượng theo các đặc quyền được cp

CHÚ THÍCH Người sử dụng hồ sơ DB_O ch được chèn vào bảng mô tả người sử dụng trong quá trình cài đặt cơ s dữ liệu SCQL.

6. Lệnh liên quan đến SCQL

6.1. Khía cạnh chung

Ngôn ngữ truy vấn thẻ có cấu trúc (SCQL) được dựa trên chức năng của Ngôn ngữ truy vấn có cấu trúc (SQL) được chuẩn hóa. Câu lệnh SQL được ánh xạ đến thao tác SCQL với lệnh PERFORM SCQL OPERATION (thực hiện thao tác SCQL) (xem Hình 9 và Bảng 2).

Hình 9 - Nguyên tắc ánh xạ của lệnh SQL đến thao tác SCQL

Các thông số bắt buộc của một lệnh luôn xảy ra trong chuỗi được quy định trong bảng lệnh liên quan. Do đó thẻ lệnh không có mặt trong thao tác SCQL. Thông số tùy chọn có mặt trong định dạng TLV nếu không được biểu thị.

Cũng như lệnh FERFORM SCQL OPERATION, hai lệnh khác thuộc về môi trưng SCQL, nhưng có thể được sử dụng bên ngoài môi trường SCQL:

- Lệnh PERFORM TRANSACTION OPERATION (xem Hình 10) và

- Lệnh PERFORM USER OPERATION (xem Hình 10).

6.2. Nhóm và mã hóa lệnh

Các lệnh liên quan đến SCQL có thể được nhóm như trong Hình 10.

Hình 10 - Các lệnh liên quan đến SCQL

Đối với các lệnh được quy định trong tiêu chuẩn này, mã lệnh và việc mã hóa các thao tác tương ứng được trình bày trong Bảng 2.

Bảng 2 - Mã lệnh và các thao tác

Mã INS

Ý nghĩa

10’

 

Thực hiện thao tác SCQL

Mã hóa và ý nghĩa của P2:

‘80’ = CREATE TABLE (tạo bảng)

81’ = CREATE VIEW (tạo hiển thị)

‘82’ = CREATE DICTIONARY (tạo từ điển)

83’ = DROP TABLE (bỏ bớt bảng)

84’ = DROP VIEW (bỏ bt hiển thị)

‘85’ = GRANT (cấp)

‘86’ = REVOKE (thu hồi)

‘87’ = DECLARE CURSOR (khai báo con trỏ)

‘88’ = OPEN (m)

‘89’ = NEXT (kế tiếp)

8A’ = FETCH (tìm nạp)

‘8B’ = FETCH NEXT (tìm nạp kế tiếp)

‘8C’ = INSERT (chèn)

‘8D’ = UPDATE (cập nhật)

8E’ = DELETE (xóa)

12’

Thực hin thao tác trao đổi

Mã hóa và ý nghĩa của P2:

80’ = BEGIN (bắt đầu)

81’ = COMMIT (thỏa hiệp)

‘82’ = ROLLBACK (hủy thỏa hiệp)

14’

Thực hiện thao tác người dùng

Mã hóa và ý nghĩa của P2:

80’ = PRESENT USER (thể hiện người sử dụng)

81’ = CREATE USER (tạo người sử dụng)

82’ = DELETE USER (xóa người sử dụng)

Việc sử dụng các ví dụ về lệnh và mã hóa này được trình bày trong Phụ lục A.

6.3. Ký hiệu và mã hóa đặc biệt

Trong các điều tiếp theo, ký hiệu sau được sử dụng để mô tả câu lệnh SQL:

- Các chữ cái in hoa trong biểu thức SQL (biểu thức cố định của ngôn ngữ SQL)

- [ ] có nghĩa là tùy chọn

- <...> có nghĩa là chuỗi thuộc tính

- ::= có nghĩa là bao gồm

- ï có nghĩa là hoặc

- * có nghĩa là tất cả

Đối với việc mã hóa các thông số, ký hiệu sau được sử dụng:

- Lp = độ dài (mã hóa trong một byte) của thông số tiếp theo

- <…> = chuỗi thông số của các byte với độ dài Lp và ý nghĩa đưa ra trong <...>

Đối với việc mã hóa kích thưc D (ví dụ: số các cột hoặc số các điều kiện), quy tắc sau đây áp dụng:

- D::=N với N = Số các mục tiếp theo, mã hóa trong một byte

Hoặc

- D::=Ln<N> với Ln=‘01’ (N mã hóa trong một byte)

Một mục bao gồm một hoặc một vài thông số liên tiếp. Kích thước Rỗng được mã hóa trên tập một byte tại ‘00’. Ý nghĩa của thông số Rỗng là “tất cả các cột” hoặc “không có điều kiện” theo lệnh.

Đối với các toán tử so sánh xảy ra trong các điều kiện tìm kiếm, thì sẽ sử dụng mã hóa theo Bảng 3.

Bảng 3 - Mã hóa các toán tử so sánh

Toán t so sánh

Mã hóa

Ý nghĩa

=

‘3D’

‘3C’

‘3E’

4C’

47’

23’

Bằng

Nhỏ hơn

Ln hơn

Nhỏ hơn hoặc bằng

Lớn hơn hoặc bng

Không bng vi

6.4. Byte trạng thái

Các byte trạng thái SW1-SW2 của một hồi đáp biu thị tình trạng xử lý trong thẻ. Bảng 4 chỉ ra ý nghĩa chung của giá trị SW1-SW2 được quy định trong tiêu chuẩn này. Đối với mỗi lệnh hoặc thao tác được thực hiện th ở mỗi điu phù hợp sẽ cung cấp các ý nghĩa chi tiết hơn.

So với ý nghĩa của byte trạng thái được quy định trong TCVN 11167-4 (ISO/IEC 7816), tiêu chuẩn này quy định việc sử dụng chúng một cách chính xác hơn.

Bảng 4 - Byte trạng thái

SW1-SW2

Quy định trong TCVN 11167-4 (ISO/IEC 7816)

Ý nghĩa

 

‘9000’

‘61xx

 

Phần 4

Phn 4

Xử lý thường

Lệnh thành công

Lệnh thành công, xx mã hóa số byte dữ liệu được tìm nạp bởi GET RESPONSE

 

6282’

 

Phần 4

Xử lý cảnh báo

Kết thúc bảng

 

6500’

6581’

 

Phần 4

Phần 4

Lỗi thực thi

Không có thông tin

Bộ nhớ hng (ví dụ: thông tin sai)

 

‘6700’

 

Phần 4

Kiểm tra lỗi

Độ dài sai

 

‘6900’

‘6982’

‘6985’

 

Phần 4

Phn 4

Phần 4

Lệnh không được phép

Không có thông tin

Trạng thái an ninh không thỏa mãn

Lệnh hoặc thao tác cần thiết không được thực hiện trước đó

 

‘6A00’

‘6A80’

‘6A81’

‘6A84’

‘6A88’

‘6A89’

 

Phần 4

Phn 4

Phn 4

Phần 4

Phần 4

Phần 4

Thông số sai

Không có thông tin

Thông số không chính xác trong trưng dữ liệu

Thao tác không được hỗ trợ

Không đủ không gian bộ nh

Không tìm thấy đối tượng tham chiếu

Đối tượng đã tồn tại

‘6Cxx’

Phần 4

Độ dài sai Le: SW2 cho biết độ dài chính xác

‘6D00’

Phần 4

Mã lnh không được hỗ trợ

6.5. Mã hóa mã định danh

Các quy ước về mã định danh sau được quy định:

<mã định danh> ::= <chữ cái in hoa> [<chữ cái in hoa> | <chữ số> | <_>]

<chữ cái in hoa > ::= A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z

<chữ số> ::= 0|1|2|3|4|5|6|7|8|9

<tên bảng> ::= <mã định danh, tối đa 8 byte>

<tên hiển thị> ::= <mã định danh, tối đa 8 byte >

<tên từ điển> ::= <phần định rõ của tên từ điển><_><O|U|P>

<tên cột> ::= < mã định danh, tối đa 8 byte >

< phần định rõ của tên từ điển > ::= < mã định danh, tối đa 6 byte > | SYSTAB

<id ngưi sử dụng> ::=

            <id cá nhân> |

            <id nhóm> <du phân cách> < id cá nhân> |

            <id nhóm> <dấu phân cách> < id nhóm con>

            <dấu phân cách> < id cá nhân> |

            < id nhóm> <du phân cách > <dấu hoa thị> |

            < id nhóm > < dấu phân cách > < id nhóm con>

            < dấu phân cách > < dấu hoa thị > |

            < id nhóm> <du phân cách > < du hoa thị >

            < dấu phân cách > < dấu hoa thị >

< id nhóm> ::= < mã định danh, tối đa 8 byte >

< id nhóm con > ::= < mã định danh, tối đa 8 byte >

< id cá nhân> ::= < mã định danh, tối đa 8 byte > | < id người sử dụng đặc biệt>

<dấu phân cách> ::=.

<dấu hoa thị> ::= *

< id người sử dụng đặc biệt > ::= <chủ th> | <người sử dụng công khai>

<chủ thẻ> ::= CHOLDER

<người sử dụng công khai> ::= PUBLIC

CHOLDER là id người sử dụng chung cho chủ thẻ, PUBLIC là id người sử dụng chung cho người sử dụng cơ sở dữ liệu, xem Bảng 1.

Ý nghĩa của dấu hoa thị là ‘không quan tâm’, nghĩa là việc mã hóa của phần này không được so sánh.

Đối với việc kiểm tra id người sử dụng, các trường hợp sau đây phải được phân biệt:

Nếu id người sử dụng là id cá nhân thì id ngưi sử dụng phải giống hệt với id người sử dụng đã đăng ký.

Nếu id người sử dụng bao gồm id nhóm kết hợp với id cá nhân thì các bước sau đây phải được thực hiện:

1) Kiểm tra xem liệu id đầy đủ của người sử dụng có được đăng ký hay không.

2) Nếu không thì kim tra xem liệu <group id>.* có được đăng ký hay không.

Nếu id người sử dụng bao gồm: id nhóm kết hợp với id nhóm con và id cá nhân thì các bước sau phải được thực hiện:

a) Kiểm tra  xem liệu id đầy đủ của người sử dụng có được đăng ký hay không

b) Nếu không thì kim tra xem liệu <group id>.<subgroup id>.* có được đăng ký hay không

c) Nếu không thì kiểm tra xem liệu <group id>.*.* có được đăng ký hay không

Việc xác nhận id người sử dụng được thực hiện nếu thao tác PRESENT USER được thực hiện trong các tình huống mà điều khiển truy cập đến các bảng, hiển thị và các từ điển được yêu cầu (xem DECLARE USER và INSERT)

CHÚ THÍCH Cơ chế xây dựng nhóm người sử dụng không phải một phn của SQL.

6.6. Thuộc tính an ninh của bảng, hiển thị và người sử dụng

Các quy ước về thuộc tính an ninh sau đây được quy định:

<thuộc tính an ninh>::=<đối tượng dữ liệu liên quan đến an ninh như đã quy định trong các phần khác của bộ tiêu chuẩn này, ví dụ: đối với việc xác thực hoặc điều khiển truy cập>

Các thuộc tính an ninh kết hợp với các bảng và các hiển thị có thể liên quan đến các thủ tục xác thực được thực hiện trước khi truy cập hoặc mô tả cơ chế thông điệp an toàn được áp dụng, nếu các hoạt động thao tác dữ liệu được thực hiện (ví dụ: đọc và ghi ở chế độ tin cậy)

6.7. Kết nối id người sử dụng với thao tác INSERT và UPDATE

Nếu cột cuối cùng của bảng có tên USER thì th sẽ duy trì một bản ghi của người sử dụng tạo sửa đổi cuối cùng cho bảng. Thao tác kết nối bao gồm việc chèn id người sử dụng hiện hành, thiết lập với thao tác PRESENT USER trong cột USER khi thực hiện thao tác INSERT. Khi thực hiện thao tác UPDATE thì thẻ sẽ ghi đè id người sử dụng hiện có trong cột USER với id người sử dụng hiện hành.

7. Hoạt động của cơ sở dữ liệu

7.1. Lệnh CREATE TABLE

7.1.1. Định nghĩa và phạm vi áp dụng

Thao tác CREATE TABLE quy định bảng với các cột và các thuộc tính an ninh. Việc quy định bảng được thêm vào trong bảng mô tả đối tượng.

7.1.2. Sử dụng có điều kiện và an toàn

Bảng chỉ có thể được tạo bởi người sử dụng với hồ sơ DB_O và DBOO.

7.1.3. Thông điệp lệnh

Thao tác SCQL liên quan đến câu lệnh SQL sau đây:

CREATE TABLE <tên bảng> <danh sách phn tử bng> [<thuộc tính an ninh>,...]

<tên bảng> ::= <mã định danh, xem điều 6.5>

<danh sách phần tử bảng > ::= (<xác định cột> [, <xác định cột> ...] [<cột USER>])

<thuộc tính an ninh> ::= < DO liên quan đến an ninh, xem điều 6.6>

<xác định cột> ::= <tên cột>

[<du phân cách><xác định ràng buộc duy nht>]

[<du phân cách><kiểu dữ liệu>]

<tên cột> ::= <mã định danh, xem điều 6.5>

<cột USER, xem điu 6.7> ::= USER

< xác định ràng buộc duy nhất > ::= U

<dấu phân cách> ::= .

<kiểu dữ liệu> ::= <kí tự biến (độ dài)>

< kí tự biến (độ dài) > ::= V<độ dài>

<độ dài> ::= <độ dài mã hóa nhị phân trên 1 byte>

Nếu việc quy định ràng buộc duy nhất được sử dụng và hỗ trợ thì thẻ phải đảm bảo rằng tất cả các giá trị trong cột liên quan là duy nhất.

Nếu ch báo độ dài biến (nghĩa là: độ dài tối đa) có mặt và được hỗ trợ thì th phải kiểm tra độ dài hiện tại của cột sao cho không vượt quá độ dài tối đa đã quy định.

Bảng 5 - Thực hiện thao tác SCQL của APDU lệnh cho CREATE TABLE

CLA

Quy định trong TCVN 11167-4 (ISO/IEC 7816-4)

INS

‘10’(=PERFORM SCQL OPERATION)

P1

‘00’, các giá trị RFU khác

P2

‘80’=CREATE TABLE

Trường Lc

Độ dài của trưng dữ liệu tiếp theo

Trường dữ liệu

Lp <tên bảng, xem Điều 6.5>

D, định vị N (các cột)

Các mục N:

Lp <xác định cột>

Các thông số tùy chọn:

Lp <s hàng tối đa, nhị phân mã hóa 1 byte>

Lp<thuộc tính an ninh >[<thuộc tính an ninh>,..]

Trường Le

Trống

7.1.4. Thông điệp hồi đáp

Bảng 6 - APDU hồi đáp thực hiện thao tác SCQL cho CREATE TABLE

Trường dữ liệu

SW1-SW2

Trống

Các byte trạng thái

7.1.5. Điều kiện trạng thái

Các điều kiện về lỗi cụ thể sau đây có thể xảy ra:

- SW1 = ‘69’ với SW2=

• ‘82’: Trạng thái an ninh không thỏa mãn

- SW1 = ‘6A’ với SW2=

• ‘80’: Các thông số không chính xác trong trường dữ liệu

• ‘84’: Không đ không gian

• ‘89’: Đối tượng đã tồn tại

7.2. Lệnh CREATE VIEW

7.2.1. Đnh nghĩa và phạm vi áp dụng

Hoạt động CREATE VIEW quy định một hiển thị trên bảng. Việc quy định hiển thị được thêm vào trong bảng mô tả đối tượng.

7.2.2. Sử dụng có điều kiện và an toàn

Hiển thị chỉ có thể được tạo bởi chủ bảng tham chiếu.

7.2.3. Thông điệp lệnh

Thao tác SCQL liên quan đến câu lệnh SQL sau đây:

CREATE VIEW <tên hiển thị> AS <xác định hiển thị> [<thuộc tính an ninh>, ...]

<tên hiển thị> = <mã định danh, xem điều 6.5>

<xác định hiển thị > ::= SELECT <lựa chọn danh sách> FROM <tên đối tượng> [WHERE <tìm điều kiện> [AND <tìm điều kiện>, ...]]

<thuộc tính an ninh>::= < DO liên quan đến an ninh, xem điều 6.6>

<lựa chọn danh sách> ::= * ï <tên cột> [, <tên cột>]

<tên đối tượng> ::= <tên bảng>

<tìm điều kiện> ::= <tên cột> <toán tử so sánh> <string>

<toán tử so sánh> ::= = ï < ï > ïïï

<string> ::= ‘<chuỗi các byte>

* = tất cả các cột

Bng 7 - APDU lệnh thực hiện thao tác SCQL cho CREATE VIEW

CLA

Quy định trong TCVN 11165-4 (ISO/IEC 7816-4)

INS

‘10 (=PERFORM SCQL OPERATON)

P1

‘00’, các giá trị RFU khác

P2

‘81’ = CREATE VIEW

Trường Lc

Độ dài của trường dữ liệu tiếp theo

Trường dữ liệu

Lp <tên hin thị, xem điều 6.5>

Lp <tên bảng>

D, đnh v N (các cột)

Các mục N:

Lp <tên cột>

D, N cố định (các điều kiện)

Các mục N bao gồm 3 thông số:

Lp <tên cột>

Lp <toán tử so sánh>

Lp <string>

Các thông số tùy chọn:

Lp<thuộc tính an ninh >[<thuộc tính an ninh>,...]

Trường Le

Rỗng

CHÚ THÍCH Nếu có mặt một vài điều kiện thì chúng được kết hợp với AND.

7.2.4. Thông điệp hồi đáp

Bảng 8 - APDU hồi đáp thc hiện thao tác SCQL cho CREATE VIEW

Trường dữ liệu

SW1 - SW2

Rỗng

Các byte trạng thái

7.2.5. Điều kiện trạng thái

Các điều kiện v lỗi cụ thể sau đây có thể xảy ra:

- SW1 = ‘69’ với SW2 =

• ‘82’: Trạng thái an ninh không thỏa mãn

- SW1 =‘6A’ với SW2=

• ‘80’: Các thông số không chính xác trong trường dữ liệu

• ‘84’: Không đủ không gian bộ nhớ

• ‘88’: Không tìm thấy đối tượng

• ‘89’: Đối tượng đã tồn tại

7.3. Lệnh CREATE DICTIONARY

7.3.1. Định nghĩa và phạm vi áp dụng

Thao tác CREATE DICTIONARY quy định một hiển thị trên các bảng hệ thống *O, *U và *P. Việc quy định hiển thị cố định được bổ sung bởi thẻ trong bảng mô tả đối tượng, xem Bảng 11 và 12. Các hàng của bảng hệ thống có thể được đọc là độc lập với hồ sơ của người sử dụng.

CHÚ THÍCH Lệnh này không có tính tương đương trong SQL.

7.3.2. Sử dụng có điều kiện và an toàn

Từ điển chỉ có th được tạo bởi DB_O hoặc DBOO.

7.3.3. Thông điệp lệnh

Thao tác SCQL liên quan đến câu lệnh m rộng SQL sau đây:

CREATE DICTIONARY <phần định rõ của tên từ điển>

<phần định rõ của tên từ điển>::<mã định danh, tối đa 6 byte, xem điều 6.5>|SYSTAB

CHÚ THÍCH Phần định rõ của tên từ đin được hoàn thiện bởi th bằng cách thêm vào _O cho việc hiển thị bảng mô tả đối tượng, _U cho việc hiển thị bảng mô tả người sử dụng và _P cho việc hiển thị bng mô tả đặc quyền. SYSTAB được sử dụng nếu cn như một tên từ điển chung.

Bng 9 - APDU lệnh thực hiện thao tác SCQL cho CREATE DICTIONARY

CLA

INS

P1

P2

Trường Lc

Trường dữ liệu

Trường Le

Quy định trong TCVN 11165-4 (ISO/IEC 7816-4)

10 (=PERFORM SCQL OPERATON)

‘00’, các giá trị RFU khác

82’ = CREATE DICTIONARY

Độ dài của trường dữ liệu tiếp theo

Lp <phần định rõ của tên từ điển, xem điều 6.5>

Rỗng

Bảng 10 - Các hàng được chèn vào nếu người sử dụng là DB_O

*O

(Bảng mô tả đối tưng)

OBJNAM

OBJOWN

OBJTYP

OPJDES

<tên từ điển định rõ>_O

<id người sử dụng của DB_O>

V

Tất cả hoặc tên của các cột

<tên từ điển định rõ>_U

<id người sử dụng của DB_O>

V

Tất cả hoặc tên của các cột

<tên từ điển định rõ>_P

<id người sử dụng của DB_O>

V

Tát cả hoặc tên của các cột

CHÚ THÍCH Trong Bng 10 cột OBJOPT là Rỗng và không được ch ra ở đây.

Bảng 11 - Các hàng được chèn vào nếu người sử dụng là DBOO

*O

(Bảng mô tả đối tượng)

OBJNAM

OBJOWN

OBJTYP

OPJDES

<tên từ điển định rõ>_O

<id người sử dụng của DBOO>

V

Tất cả hoặc tên của các cột; điều kiện: OBJOWN =<id người sử dụng của DBOO>

<tên từ điển định rõ>_U

<id người sử dụng của DBOO>

V

Tất cả hoặc tên của các cột điều kiện: OBJOWN =<id người sử dụng của DBOO>

<tên t điển định rõ>_P

<id người sử dụng của DBOO>

V

Tất cả hoặc tên của các cột; điều kiện: OBJOWN =<id người sử dụng của DBOO>

CHÚ THÍCH Trong Bảng 11 cột OBJOPT là Rỗng và không được ch ra ở đây.

7.3.4. Thông điệp hồi đáp

Bảng 12 - APDU hồi đáp thực hiện thao tác SCQL cho CREATE DICTIONARY

Trường dữ liệu

SW1 - SW2

Rỗng

Các byte trạng thái

7.3.5. Điều kiện trạng thái

Các điều kiện về lỗi cụ thể sau đây có thể xảy ra:

- SW1 = ‘69’ với SW2 =

• ‘82’: Trạng thái an ninh không thỏa mãn

- SW 1 =‘6A’ với SW2=

• ‘80’: Các thông số không chính xác trong trường dữ liệu

• ‘84’: Không đủ không gian bộ nhớ

• ‘89’: Đối tượng đã tồn tại

7.4. Lệnh DROP TABLE

7.4.1. Định nghĩa và phạm vi áp dụng

Với thao tác DROP TABLE, một bảng có thể bị bỏ bớt.

7.4.2. Sử dụng có điều kiện và an toàn

Một bảng ch có thể b bớt bởi chủ của nó. Các đặc quyền kết hợp với bảng nên tự động b bỏ bớt.

7.4.3. Thông điệp lệnh

Thao tác SCQL liên quan đến câu lệnh SQL sau đây:

DROP TABLE <tên bảng>

Bảng 13 - APDU lệnh thực hiện thao tác SCQL cho DROP TABLE

CLA

INS

P1

P2

Trường Lc

Trường dữ liệu

Trưng Le

Quy định trong TCVN 11165-4 (ISO/IEC 7816-4)

10’ (=PERFORM SCQL OPERATON)

‘00’, các giá trị RFU khác

83’ = DROP TABLE

Độ dài của trường dữ liệu tiếp theo

Lp <tên bảng>

Rỗng

7.4.4. Thông điệp hi đáp

Bảng 14 - APDU hồi đáp thực hiện thao tác SCQL cho DROP TABLE

Trường dữ liệu

SW1 - SW2

Rỗng

Các byte trạng thái

7.4.5. Điều kiện trạng thái

Các điều kiện về lỗi cụ th sau đây có thể xảy ra:

- SW1 = ‘69’ với SW2 =

• ‘82’: Trạng thái an ninh không thỏa mãn

- SW 1 = ‘6A’ với SW2 =

• ‘80’: Các thông số không chính xác trong trường dữ liệu

• ‘88’: Không tìm thấy đối tượng tham chiếu

7.5. Lệnh DROP VIEW

7.5.1. Đnh nghĩa và phạm vi áp dụng

Với thao tác DROP VIEW, một bảng có thể bị b bớt.

7.5.2. Sử dụng có điều kiện và an toàn

Một hiển thị chỉ có thể bị bớt bởi chủ của nó. Các đặc quyền kết hợp với bảng nên tự động bị b bt.

7.5.3. Thông điệp lệnh

Thao tác SCQL liên quan đến câu lệnh SQL sau đây:

DROP VIEW <tên hiển thị hoặc tên từ điển>

Bảng 15 - APDU lệnh thực hiện thao tác SCQL cho DROP VIEW

CLA

INS

P1

P2

Trưng Lc

Trưng dữ liệu

Trường Le

Quy định trong TCVN 11165-4 (ISO/IEC 7816-4)

‘10’ (=PERFORM SCQL OPERATON)

‘00’, các giá trị RFU khác

‘84’ = DROP VIEW

Độ dài của trường dữ liệu tiếp theo

Lp <tên bảng hoặc tên từ điển>

Rỗng

7.5.4. Thông điệp hồi đáp

Bảng 16 - APDU hồi đáp thực hiện thao tác SCQL cho DROP VIEW

Trường dữ liệu

SW1 - SW2

Rỗng

Các byte trạng thái

7.5.5. Điều kiện trạng thái

Các điều kiện về lỗi cụ thể sau đây có thể xảy ra:

- SW1 = ‘69’ với SW2 =

• ‘82’: Trạng thái an ninh không thỏa mãn

- SW 1 =‘6A’ với SW2=

• ‘80’: Các thông số không chính xác trong trường dữ liệu

• ‘88’: Không tìm thấy đối tượng tham chiếu

7.6. Lệnh GRANT

7.6.1. Định nghĩa và phạm vi áp dụng

Thao tác GRANT cho phép cấp các đặc quyền cho người sử dụng đơn lẻ, cho nhóm người sử dụng hoặc cho tt cả người sử dụng.

Các đặc quyền sau có th được cấp:

a) Đặc quyền đối với truy cập bảng:

- SELECT (lựa chọn)

- INSERT (chèn)

- UPDATE (cập nhật)

- DELETE (xóa)

b) Đặc quyền đối với truy cập hiển thị:

- SELECT (lựa chọn)

- UPDATE (cập nhật)

c) Đặc quyền đối với truy cập từ điển:

- SELECT (lựa chọn)

CHÚ THÍCH Nếu ngoài đặc quyền cho phép truy cp được yêu cu (tức là th hiện bằng mật khu) trưc khi thao tác tương ứng được thực hiện thì điu này phải được quy định trong các thuộc tính an ninh quy định cho bảng hoặc hin thị tương ứng.

7.6.2. Sử dụng có điều kiện và an toàn

Chỉ có chủ của bảng hoặc hiển thị mới có thể cấp hoặc thu hồi các đặc quyền.

7.6.3. Thông điệp lệnh

Thao tác SCQL liên quan đến câu lệnh SQL sau đây:

GRANT<các đặc quyền>ON<tên đối tượng>TO<người được cấp>

<các đặc quyền>::=<hoạt động>[,<hoạt động>...]|ALL

<hoạt động>::=SELECT|INSERT|UPDATE|DELETE

<tên đối tượng>::=<tên bảng>|<tên hiển thị>| <tên từ điển>

<người được cấp>::=<id người sử dụng, xem điều 6.5>|*

*= tt cả người sử dụng

Bảng 17 - APDU lệnh thực hiện thao tác SCQL cho GRANT

CLA

INS

P1

P2

Trường Lc

Trường dữ liệu

 

 

Trưng Le

Quy định trong TCVN 11165-4 (ISO/IEC 7816-4)

10’ (=PERFORM SCQL OPERATON)

‘00’, các giá trị RFU khác

‘85’ = GRANT

Độ dài của trường dữ liệu tiếp theo

Lp <các đặc quyền, mã hóa xem bảng 18>

Lp <tên bảng, tên hiển thị hoặc tên từ điển>

Lp<id người sử dụng (xem điều 6.5) hoặc *>

Rỗng

Bảng 18 - Mã hóa các đặc quyền

Đặc quyền

Mã hóa trong SCQL

INSERT

SELECT

UPDATE

DELETE

Tt cả

‘41’

42’

44’

48’

‘4F’

7.6.4. Thông điệp hồi đáp

Bảng 19 - APDU hồi đáp thực hiện thao tác SCQL cho GRANT

Trường dữ liệu

SW1 - SW2

Rỗng

Các byte trạng thái

7.6.5. Điều kiện trạng thái

Các điều kiện về lỗi cụ thể sau đây có thể xảy ra:

- SW1 = ‘69’ với SW2 =

• ‘82’: Trạng thái an ninh không thỏa mãn

- SW 1 =‘6A’ với SW2=

• ‘80’: Các thông số không chính xác trong trường dữ liệu

• ‘84’: Không đ không gian bộ nhớ

• ‘88’: Không tìm thấy đối tượng tham chiếu

7.7. Lệnh REVOKE

7.7.1. Định nghĩa và phạm vi áp dụng

Thao tác REVOKE cho phép thu hồi các đặc quyền đã cấp trước đó (xem Điều 7.6).

7.7.2. Sử dụng có điều kiện và an toàn

Ch có chủ của bảng hoặc hiển thị mới có thể thu hồi các đặc quyền.

7.7.3. Thông điệp lệnh

Thao tác SCQL liên quan đến câu lệnh SQL sau đây:

REVOKE<các đặc quyền>ON<tên đối tượng>FROM<ngưi được cấp>

<các đặc quyền>::=<hoạt động>[,<hoạt động>...]|ALL

<hoạt động>::=SELECT|INSERT|UPDATE|DELETE

<tên đối tượng>::=<tên bảng>|<tên hiển thị>| <tên từ điển>

<người được cấp>::=<id người sử dụng>|*

*= tất cả người sử dụng

Bảng 17 - APDU lệnh thực hiện thao tác SCQL cho REVOKE

CLA

INS

P1

P2

Trường Lc

Trường dữ liệu

 

 

Trường Le

Quy định trong TCVN 11165-4 (ISO/IEC 7816-4)

10’ (=PERFORM SCQL OPERATON)

‘00’, các giá trị RFU khác

86’ = REVOKE

Độ dài của trường dữ liệu tiếp theo

Lp <các đặc quyền, mã hóa xem bảng 18>

Lp <tên bảng, tên hiển thị hoặc tên từ điển>

Lp<id người sử dụng hoặc *>

Rỗng

7.7.4. Thông điệp hồi đáp

Bảng 21 - APDU hồi đáp thực hiện thao tác SCQL cho REVOKE

Trường dữ liệu

SW1 - SW2

Trống

Các byte trạng thái

7.7.5. Điều kiện trạng thái

Các điu kiện về lỗi cụ thể sau đây có thể xảy ra:

- SW1 = ‘69’ với SW2 =

• ‘82’: Trạng thái an ninh không thỏa mãn

- SW 1 =‘6A’ với SW2=

• ‘80’: Các thông số không chính xác trong trường dữ liệu

• ‘88’: Không tìm thấy đối tượng tham chiếu

7.8. Lệnh DECLARE CURSOR

7.8.1. Định nghĩa và phạm vi áp dụng

Con trỏ được sử dụng để chỉ tới một cột trong bảng, hiển thị hoặc từ điển. Thao tác DECLARE CURSOR được sử dụng để khai báo một con tr.

7.8.2. Sử dụng có điều kiện và an toàn

Việc khai báo một con trỏ ch được chấp nhận nếu người sử dụng thực tế được phép truy cập bảng, hiển thị hoặc từ đin tham chiếu. Ngưi sử dụng phải là ch của đối tượng tham chiếu hoặc có ít nhất một đặc quyền truy cập đến đối tượng tham chiếu (để so sánh id người sử dụng hiện hành với id người sử dụng lưu trữ trong bảng hệ thống *P, xem Điều 6.5).

Chỉ có một con tr tn tại ở thời gian cho trước, tức là nếu một con trỏ mới được khai báo thì con trỏ trước đó không còn hiệu lực nữa.

7.8.3. Thông điệp lệnh

Thao tác SCQL liên quan đến câu lệnh SQL sau đây:

DECLARE CURSOR FOR <lựa chọn>

<lựa chọn>::=SELECT <lựa chọn danh sách>FROM<tên đối tượng>[WHERE<tìm kiếm điều kiện>[AND<tìm kiếm điều kiện>,...]

<lựa chọn danh sách>::=*|<tên cột>[,<tên cột>]

<tên đối tượng>::=<tên bảng> | <tên hiển thị> | <tên từ điển>

<tìm kiếm điều kiện>::=<tên cột> <toán tử so sánh> <string>

<toán tử so sánh>::== | < | > | | | ≠

<string>::=‘<chui các byte>

*= tất cả các cột

CHÚ THÍCH Vì ch có một con trỏ tại thời điểm có th xảy ra nên không có lên con tr được sử dụng

Bảng 22 - APDU lệnh thực hiện thao tác SCQL cho DECLARE CURSOR

CLA

INS

P1

P2

Trường Lc

Trường dữ liệu

Quy định trong TCVN 11165-4 (ISO/IEC 7816-4)

10’ (=PERFORM SCQL OPERATON)

‘00’, các giá trị RFU khác

‘87’ = DECLARE CURSOR

Độ dài của tờng dữ liệu tiếp theo

Lp <tên bảng, tên hiển thị hoặc tên từ điển>

D, định vị N (các cột)

Các mục N:

Lp <tên cột>

Nếu các điều kiện có mặt:

D, N cố định (các điều kiện)

Các mục N bao gồm 3 thông số:

Lp<tên cột>

Lp <toán tử so sánh>

Lp<string>

Trường Le

Trống

CHÚ THÍCH Nếu có mặt một vài điều kiện thì chúng sẽ được kết hợp với AND.

7.8.4. Thông điệp hồi đáp

Bảng 23 - APDU hồi đáp thực hiện thao tác SCQL cho DECLARE CURSOR

Trường dữ liệu

SW1 - SW2

Trống

Các byte trạng thái

7.8.5. Điều kiện trạng thái

Các điều kiện về lỗi cụ thể sau đây có thể xảy ra:

- SW1 = ‘69’ với SW2 =

• ‘82’: Trạng thái an ninh không tha mãn

- SW 1 =‘6A’ với SW2=

• ‘80’: Các thông số không chính xác trong trường dữ liệu

7.9. Lệnh OPEN

7.9.1. Định nghĩa và phạm vi áp dụng

Thao tác OPEN mở một con tr, tức là con tr được đặt trên hàng đầu tiên đáp ứng lựa chọn được quy định trước với thao tác DECLARE CURSOR.

7.9.2. Sử dụng có điều kiện và an toàn

Con trỏ phải được khai báo trước đó.

7.9.3. Thông điệp lệnh

Thao tác SCQL liên quan đến câu lệnh SQL sau đây:

OPEN

Bảng 24 - APDU lệnh thực hiện thao tác SCQL cho OPEN

CLA

INS

P1

P2

Trường Lc

Trường dữ liệu

Trưng Le

Quy định trong TCVN 11165-4 (ISO/IEC 7816-4)

‘10’ (=PERFORM SCQL OPERATON)

‘00’, các giá trị RFU khác

‘88’ = OPEN

Trống

Trống

Trống

7.9.4. Thông điệp hồi đáp

Bảng 25 - APDU hồi đáp thực hiện thao tác SCQL cho OPEN

Trường dữ liệu

SW1 - SW2

Trống

Các byte trạng thái

7.9.5. Điều kiện trạng thái

Các điều kiện về lỗi cụ thể sau đây có thể xảy ra:

- SW1 =‘62’ với SW2 =

• ‘82’: Kết thúc bảng

- SW 1 = ‘69’ với SW2=

• ‘85’: Các lệnh hoặc thao tác cần thiết không được thực hiện trước đó (không có con trỏ nào được xác định)

7.10. Lệnh NEXT

7.10.1. Định nghĩa và phạm vi áp dụng

Thao tác NEXT thiết lập con trỏ ở hàng tiếp theo đáp ứng đặc tả của con tr.

7.10.2. Sử dụng có điều kiện và an toàn

Con trỏ phải được m trước đó.

7.10.3. Thông điệp lệnh

Thao tác SCQL liên quan đế câu lệnh SQL sau đây:

NEXT

Bng 26 - APDU lệnh thực hiện thao tác SCQL cho NEXT

CLA

INS

P1

P2

Trường Lc

Trường dữ liệu

Trường Le

Quy định trong TCVN 11165-4 (ISO/IEC 7816-4)

10’ (=PERFORM SCQL OPERATON)

‘00’, các giá trị RFU khác

‘89’ = NEXT

Trống

Trống

Trống

7.10.4. Thông điệp hồi đáp

Bng 27 - APDU hồi đáp thực hiện thao tác SCQL cho NEXT

Trường dữ liệu

SW1 - SW2

Trống

Các byte trạng thái

7.10.5. Điều kiện trạng thái

Các điều kiện về lỗi cụ thể sau đây có thể xảy ra:

- SW1 = ‘62’ với SW2 =

• ‘82’: Kết thúc bảng

- SW 1 =‘69’ với SW2=

• ‘85’: Các lệnh hoặc thao tác cn thiết không được thực hiện trước đó (không có con trỏ nào được xác định)

7.11. Lệnh FETCH

7.11.1. Định nghĩa và phạm vi áp dụng

Thao tác FETCH cho phép tìm nạp một hàng hoặc một phần của nó. Con trỏ phải chđến hàng được tìm nạp.

7.11.2. Sử dụng có điều kiện và an toàn

Thao tác ch có thể được thực hiện bởi chủ của đối tượng hoặc người sử dụng với đặc quyền SELECT. Con trỏ phải được mở trước đó.

7.11.3. Thông điệp lệnh

Thao tác SCQL liên quan đến câu lệnh SQL sau đây:

FETCH

Bảng 28 - APDU lệnh thực hiện thao tác SCQL cho FETCH

CLA

INS

P1

P2

Trường Lc

Trường dữ liệu

Trường Le

Quy định trong TCVN 11165-4 (ISO/IEC 7816-4)

‘10’ (=PERFORM SCQL OPERATON)

‘00’, các giá trị RFU khác

‘8A’ = FETCH

Rỗng

Rỗng

Độ dài lớn nht của dữ liệu mong muốn

7.11.4. Thông điệp hồi đáp

Bảng 29 - APDU hi đáp thực hiện thao tác SCQL cho FETCH

Trường dữ liệu

SW1 - SW2

D, định vị N (các cột)

Các mục N:

Lp <string>

Các byte trạng thái

CHÚ THÍCH Trong trường hợp T=0 giao thc truyền được sử dụng, độ dài của dữ liệu đã chọn được ch ra trong các byte trạng thái (SW1-SW2=‘6Cxx’, trong đó xx cho biết số byte dữ liệu có sn). Dữ liệu phải được ly lại bằng cách phát hành lại cùng một lệnh với giá tr Le trong SW2.

Trong trưng hợp T =1 giao thức truyền được sử dụng, dữ liu được truyn trong APDU hồi đáp lệnh FETCH.

7.11.5. Điều kiện trạng thái

Các điều kiện về lỗi cụ th sau đây có thể xảy ra:

- SW1 = ‘69’ với SW2 =

• ‘82’: Trạng thái an ninh không thỏa mãn

• ‘85’: Các lệnh hoặc hoạt động cần thiết không được thực hiện trước đó (không có con trỏ nào được xác định)

7.12. Lệnh FETCH NEXT

7.12.1. Đnh nghĩa và phạm vi áp dụng

Thao tác FETCH NEXT phải được sử dụng để đọc hàng tiếp theo từ v trí con trỏ. Con trỏ được thiết lập đến hàng đã tìm nạp.

7.12.2. Sử dụng có điều kiện và an toàn

Thao tác chỉ có th được thực hiện bởi chủ của đối tượng hoặc người sử dụng với đặc quyền SECLECT. Con trỏ phải được mở trước đó.

7.12.3. Thông điệp lệnh

Thao tác SCQL liên quan câu lệnh SQL sau đây:

FETCH NEXT

Bảng 30 - APDU lnh thực hiện thao tác SCQL cho FETCH NEXT

CLA

INS

P1

P2

Trường Lc

Trường dữ liệu

Trường Le

Quy định trong TCVN 11165-4 (ISO/IEC 7816-4)

10’ (=PERFORM SCQL OPERATON)

‘00’, các giá tr RFU khác

‘8B’ = FETCH NEXT

Rỗng

Rỗng

Độ dài lớn nht của dữ liệu mong muốn

7.12.4. Thông điệp hồi đáp

Bảng 31 - APDU hồi đáp thực hiện thao tác SCQL cho FETCH NEXT

Trường dữ liệu

SW1 - SW2

D, định vị N (các cột)

Các mục N:

Lp <string>

Các byte trạng thái

Xem CHÚ THÍCH bên dưới Bảng 29.

7.12.5. Điều kiện trạng thái

Các điều kiện về lỗi cụ thể sau đây có thể xảy ra:

- SW1 = 69’ với SW2 =

• ‘82’: Kết thúc bảng

- SW 1 = ‘62’ với SW2=

• ‘82’: Trạng thái an ninh không thỏa mãn

• ‘85’: Các lệnh hoặc thao tác cần thiết không được thực hiện trước đó (không có con trỏ nào được xác định)

7.13. Lệnh INSERT

7.13.1. Định nghĩa và phạm vi áp dụng

Thao tác INSERT được sử dụng đ chèn một hàng vào bảng. Hàng mới luôn luôn được thêm vào ở cuối bảng. Con trỏ vẫn ở vị trí của nó.

7.13.2. Sử dụng có điều kiện và an toàn

Lệnh chỉ có th được thực hiện bởi chủ của bảng hoặc người sử dụng đặc quyền INSERT.

Giá trị cho cột USER - nếu có sẽ được chèn bởi người sử dụng, xem điều 6.7.

7.13.3. Thông điệp lệnh

Hoạt đông SCQL liên quan đến câu lệnh SQL sau đây:

INSERT [INTO]<tên bảng>VALUES(<string>[,<string>...])

<string>::=<chuỗi các byte>’

Bảng 32 - APDU lệnh thực hiện thao tác SCQL cho INSERT

CLA

INS

P1

P2

Trường Lc

Trưng dữ liệu

 

 

 

Trường Le

Xác định trong TCVN 11165-4 (ISO/IEC 7816-4)

10’ (=PERFORM SCQL OPERATON)

‘00’, các giá trị RFU khác

‘8C’ = INSERT

Độ dài của trưng dữ liệu tiếp theo

Lp <tên bng>

D, N cố định (các cột)

Các mục N:

Lp <string>

Rỗng

7.13.4. Thông điệp hồi đáp

Bảng 33 - APDU hồi đáp thực hiện thao tác SCQL cho INSERT

Trường dữ liệu

SW1 - SW2

Rỗng

Các byte trạng thái

7.13.5. Điều kiện trạng thái

Các điều kiện về lỗi cụ thể sau đây có thể xảy ra:

- SW1 =‘62’với SW2 =

• ‘82’: Kết thúc bảng

- SW 1 = ‘67’ với SW2

• ‘00’: Độ dài sai

- SW1 = ‘69’ với SW2 =

• ‘82’: Trạng thái an ninh không thỏa mãn

- SW1 = ‘6A’ với SW2 =

• ‘80’: Các thông số không chính xác trong trường dữ liệu

• ‘84’: Không đủ không gian bộ nhớ

• ‘88’: Không tìm thấy đối tượng tham chiếu

• ‘89’: Đối tượng tồn tại (giá trị cột không phải duy nhất)

7.14. Lệnh UPDATE

7.14.1. Định nghĩa và phạm vi áp dụng

Thao tác UPDATE cập nhật một hay nhiều trường của hàng trong bảng hoặc hiển thị mà con trỏ hướng tới.

7.14.2. Sử dụng có điu kiện và an toàn

Lệnh ch có thể được thực hiện bởi chủ của bảng hoặc người sử dụng đặc quyền UPDATE. Con trỏ phải được mở trước đó.

Giá trị cho cột USER - nếu có sẽ được sa đổi bằng thẻ, xem Điều 6.7.

7.4.13. Thông điệp lệnh

Thao c SCQL liên quan đến câu lệnh SQL sau đây:

UPDATE SET <thiết lập danh sách điều>

<thiết lập danh sách điều>::=<tên cột>=<string>[,<tên cột>=<string>...]

<string>::=‘<chuỗi các byte>

Bảng 34 - APDU lệnh thực hiện thao tác SCQL cho UPDATE

CLA

INS

P1

P2

Trường Lc

Trường dữ liệu

 

 

 

Trường Le

Quy định trong TCVN 11165-4 (ISO/IEC 7816-4)

‘10’ (=PERFORM SCQL OPERATON)

‘00’, các giá trị RFU khác

8D’ = UPDATE

Độ dài của trường dữ liệu tiếp theo

D, N cố định (các cột)

Các mục N bao gồm 2 thông số:

Lp (tên cột)

Lp <string>

Rỗng

7.12.4. Thông điệp hồi đáp

Bảng 35 - APDU hồi đáp thực hiện thao tác SCQL cho UPDATE

Trường dữ liệu

SW1 - SW2

Rỗng

Các byte trạng thái

7.14.5. Điều kiện trạng thái

Các điều kiện về lỗi cụ thể sau đây có thể xảy ra:

- SW 1 =‘67’ với SW2=

• ‘00’: Độ dài sai

- SW1 = 69’ với SW2 =

• ‘82’: Trạng thái an ninh không thỏa mãn

• ‘85’: Các lệnh và hoạt động cần thiết không được thực hiện trước đó (không có con trỏ được xác định)

- SW1 = ‘6A’ với SW2 =

• ‘80’: Các thông số không chính xác trong trường dữ liệu

• ‘84’: Không đủ không gian bộ nhớ

• ‘89’: Đối tượng tồn tại (giá trị cột không phải duy nhất)

7.15. Lệnh DELETE

7.15.1. Định nghĩa và phạm vi áp dụng

Với thao tác DELETE, một hàng trong bảng mà con trỏ hướng tới có thể bị xóa. Con trỏ được di chuyển đến hàng tiếp theo.

7.15.2. Sử dụng có điều kiện và an toàn

Lệnh chỉ có thể được thực hiện bởi chủ của bảng hoặc người sử dụng với đặc quyền DELETE đối với bảng tham chiếu.

7.15.3. Thông điệp lệnh

DELETE

Bảng 36 - APDU lệnh thực hiện thao tác SCQL cho DELETE

CLA

INS

P1

P2

Trường Lc

Trường dữ liệu

Trường Le

Quy định trong TCVN 11165-4 (ISO/IEC 7816-4)

‘10’ (=PERFORM SCQL OPERATON)

‘00’, các giá trị RFU khác

‘8E’ = DELETE

Rỗng

Rỗng

Rỗng

7.15.4. Thông điệp hồi đáp

Bảng 37 - APDU hồi đáp thực hiện thao tác SCQL cho DELETE

Trường dữ liệu

SW1 - SW2

Rỗng

Các byte trạng thái

7.15.5. Điều kiện trạng thái

Các điều kiện về lỗi cụ thể sau đây có thể xảy ra:

- SW1 = ‘62’ với SW2 =

• ‘82’: kết thúc bảng

- SW 1 =‘69’ với SW2=

• ‘82’: Trạng thái an ninh không thỏa mãn

• ‘85’: Các lệnh hoặc hoạt động cần thiết không được thực hiện trước đó (không có con trỏ nào được xác định)

8. Quản lý giao dịch

8.1. Khái niệm chung

Trong ngữ cảnh này, giao dịch là quá trình sửa đổi trong cơ sở dữ liệu. Việc sửa đi có thể là một cập nhật hoặc việc chèn một hoặc nhiều hàng.

Lệnh PERFORM TRANSACTION OPERATION đưa ra các thao tác cần để xác nhận hoặc xóa các giao dịch.

Nếu lệnh này không được sử dụng hoặc không được hỗ trợ thì thao tác SCQL luôn được thực hiện theo nghĩa cam kết, tức là một sửa đổi tr thành có hiệu lực tức thì.

8.2. Thao tác giao dch

8.2.1. Lệnh BEGIN

8.2.1.1. Đnh nghĩa và phạm vi áp dng

Thao tác giao dịch BEGIN định vị không gian cho hình ảnh bộ nhớ, ví dụ: một hàng.

8.2.1.2. Sử dụng có điều kiện và an toàn

Không gian bộ nhớ được cung cấp là một phụ thuộc thực thi. Khuyến cáo rằng đủ không gian bộ nhớ cho phương pháp đệm của ít nhất một hàng được đnh vị.

8.2.1.3. Thông điệp lệnh

Bảng 38 - APDU lệnh thực hiện thao tác giao dch cho BEGIN

CLA

INS

P1

P2

Trường Lc

Trường dữ liệu

Trưng Le

Quy định trong TCVN 11165-4 (ISO/IEC 7816-4)

‘12’ (=PERFORM TRANSACTION)

‘00’, các giá trị RFU khác

‘80’ = BEGIN

Rỗng

Rỗng

Rỗng

8.2.1.4. Thông điệp hồi đáp

Bảng 39 - APDU hồi đáp thực hiện thao tác giao dch cho cho BEGIN

Trường dữ liệu

SW1 - SW2

Rỗng

Các byte trạng thái

8.2.1.5. Điều kiện trạng thái

Các điều kiện về lỗi cụ thể sau đây có thể xảy ra:

- SW1 = ‘6A’ với SW2 =

• ‘84’: không đủ không gian bộ nhớ

8.2.2. Lệnh COMMIT

8.2.2.1. Định nghĩa và phạm vi áp dụng

Thao tác giao dịch COMMIT kiểm tra tính hợp lệ tất cả các sửa đi đã tạo từ khi Thao tác giao dịch BEGIN được thực hiện.

8.2.2.2. Sử dụng có điều kiện và an toàn

Thao tác giao dịch BEGIN phải được thực hiện trước.

8.2.2.3. Thông điệp lệnh

Bảng 40 - APDU lệnh thực hiện thao tác giao dch cho COMMIT

CLA

INS

P1

P2

Trường Lc

Trường dữ liệu

Trường Le

Quy định trong TCVN 11165-4 (ISO/IEC 7816-4)

‘12’ (=PERFORM TRANSACTION)

‘00’, các giá trị RFU khác

81 = COMMIT

Rỗng

Rỗng

Rỗng

8.2.2.4. Thông điệp hồi đáp

Bảng 41 - APDU hồi đáp thực hiện thao tác giao dch cho cho COMMIT

Trường dữ liệu

SW1 - SW2

Rỗng

Các byte trạng thái

8.2.2.5. Điều kiện trạng thái

Các điều kiện về lỗi cụ thể sau đây có thể xảy ra:

- SW1 = ‘69’ với SW2 =

• ‘85’: các lệnh hoặc các hoạt động cần thiết không được thực hiện trước đó (không có giao dịch BEGIN)

8.2.3. Lệnh ROLLBACK

8.2.3.1. Định nghĩa và phạm vi áp dụng

Thao tác giao dịch ROLLBACK khôi phục ngữ cảnh theo cách trước khi thao tác giao dịch BEGIN được thc hiện.

8.2.3.2. Sử dụng có điều kiện và an toàn

Thao tác giao dịch BEGIN phi được thực hiện trước.

8.2.3.3. Thông điệp lệnh

Bảng 42 - APDU lệnh thực hiện thao tác giao dịch cho ROLLBACK

CLA

INS

P1

P2

Trưng Lc

Trường dữ liệu

Trường Le

Quy định trong TCVN 11165-4 (ISO/IEC 7816-4)

12’ (=PERFORM TRANSACTION)

‘00’, các giá trị RFU khác

‘82’ = ROLLBACK

Rỗng

Rỗng

Rỗng

8.2.3.4. Thông điệp hồi đáp

Bảng 43 - APDU hồi đáp thực hiện thao tác giao dịch cho cho ROLLBACK

Trường dữ liệu

SW1 - SW2

Rỗng

Các byte trạng thái

8.2.3.5. Điều kiện trạng thái

Các điều kiện về lỗi cụ th sau đây có thể xảy ra:

- SW1 = ‘69’ với SW2 =

• ‘85’: Các lệnh hoặc thao tác cần thiết không được thực hiện trước đó (không có giao dịch BEGIN)

9. Quản lý người sử dụng

9.1. Khái niệm chung

Quản lý người sử dụng liên quan đến:

- Định danh người sử dụng

- Chứng thực người sử dụng

- Thm quyền người sử dụng

- Đăng ký/xóa đăng ký người sử dụng

Đối với việc định danh người sử dụng, một id người sử dụng được dùng có thể có cấu trúc như trong Điều 6.5.

Nếu có yêu cầu cho một dẫn chứng rằng id người sử dụng được gắn với người sử dụng thì thủ tục xác nhận phải được thực hiện. Các cơ chế thích hợp cho việc xác nhận người sử dụng là:

- Cơ chế xác minh mật khẩu

- Cơ chế xác minh sinh trắc học

- Cơ chế mật mã dựa trên thuật toán đối xứng hoặc hệ thống khóa công khai kết hp với giấy chứng nhận.

Trong giấy chứng nhận id người sử dụng phù hợp với mã định danh người sử dụng.

Giấy phép của người sử dụng đề cập đến các quyền của người sử dụng để thực hiện các thao tác. Trong môi trường SCQL, giấy phép của người sử dụng được kết nối với:

- Hồ sơ người sử dụng (DB_O, DBOO hoặc DBBU),

- Các đặc quyền người sử dụng (xem bảng 18) và

- Vai trò người sử dụng, nhóm người sử dụng (xem điều 6.5, 7.6, 7.7 và 9.2.1).

Đăng ký người sử dụng bao trùm việc đăng ký người sử dụng với id người sử dụng, hồ sơ người sử dụng với các thuộc tính an ninh (xem Điều 6.6). Việc xóa đăng ký người sử dụng được thực hiện bằng cách xóa đăng ký.

Trong điều này, các thao tác về định danh người sử dụng sau dựa trên lệnh PERFORM USER OPERATION được quy định là:

- PRESENT USER

- CREATE USER

- DELETE USER.

Các lệnh và thao tác liên quan đến th tục xác nhận không được quy định trong tiêu chuẩn này. Tuy nhiên, khi tạo một người sử dụng với id người sử dụng và hồ sơ người sử dụng, các thuộc tính an ninh có thể được thiết lập bao gồm các DO liên quan đến an ninh thích hợp xác định trong các phần khác của bộ tiêu chuẩn. Các lệnh và thao tác đặc biệt liên quan đến việc xác nhận có thể được tìm thấy trong Điều 7 (xem CREATE VIEW, GRANT và REVOKE).

9.2. Hoạt động liên quan đến người sử dụng

9.2.1. Lệnh PRESENT USER

9.2.1.1. Định nghĩa và phạm vi áp dụng

Thao tác PRESENT USER sẽ kiểm tra việc đăng ký id người sử dụng đã giới thiệu. Id người sử dụng phải được giới thiệu theo các quy ước quy định trong Điều 6.5 hoặc trong DO tên ch thẻ trong giấy chứng nhận của chủ thẻ. Nếu id người sử dụng được đăng ký trong bảng hệ thống *U, người sử dụng mô tả bởi id người sử dụng được thiết lập như người sử dụng hiện hành.

CHÚ THÍCH Giy chứng nhận chứa DO tên ch thẻ có thể thuộc v một chuyên gia hoặc bên cung cp dịch vụ.

9.2.1.2. Sử dụng có điều kiện và an toàn

Có thể chỉ có một người sử dụng hiện hành tại thời điểm mỗi kênh.

Giống như các lệnh tiếp theo, các lệnh xác nhận có thể theo sau:

- VERIFY hoặc

- GET CHALLENGE và EXTERNAL AUTHENTICATE , xem TCVN 11165-4 (ISO/IEC 7816-4).

9.2.1.3. Thông điệp lệnh

Thao tác PRESENT USER liên quan đến câu lệnh m rộng của SQL sau đây:

PRESENT USER <id người sử dụng, xem điều 6.5>| <DO chứng nhận chủ thẻ>

< DO chứng nhận ch thẻ>::=<thẻ ghi 7F21’><độ dài><DO tên chủ thẻ><DOs bổ sung>

<DO tên ch thẻ>::=<thẻ ghi ‘5F20’>

<độ dài><id người sử dụng, xem điều 6.5>

Bảng 44 - APDU lệnh PERFORM USER OPERATION cho PRESENT USER

CLA

INS

P1

P2

Trường Lc

Trường dữ liệu



Trường Le

Quy định trong TCVN 11165-4 (ISO/IEC 7816-4)

‘14’ (=PERFORM USER OPERATION)

‘00’, các giá tr RFU khác

80’ = PRESENT USER

Độ dài của trường dữ liệu tiếp theo

<id người sử dụng, xem điều 6.5> hoặc

<DO chứng nhận chủ th, thẻ ghi 7F21, xem TCVN 11167-6 (ISO/IEC 7816-6)>

Rỗng

9.2.1.4. Thông điệp hồi đáp

Bảng 45 - APDU hồi đáp PERFORM USER OPERATION cho PRESENT USER

Trường dữ liệu

SW1 - SW2

Rỗng

Các byte trạng thái

9.2.1.5. Điều kiện trạng thái

Các điều kiện v lỗi cụ thể sau đây có thể xảy ra:

- SW1 = ‘6A’ với SW2 =

• ‘80’: Các thông số không chính xác trong trường d liệu

• ‘88’: Không tìm thấy đối tượng tham chiếu (id người sử dụng)

9.2.2. Lệnh CREATE USER

9.2.2.1. Định nghĩa và phạm vi áp dụng

Thao tác CREATE USER khi tạo việc đăng ký người sử dụng, Trong môi trưng SCQL một hàng trong bảng mô tả người sử dụng được chèn bằng thẻ.

Nếu việc xác nhận được yêu cầu, khi người sử dụng muốn truy cập cơ sở dữ liệu hoặc các bảng hoặc các hiển thị được bảo vệ thì thông tin liên quan đến việc xác nhận phải được thêm vào (xem 6.6). Trong trường hợp này, thao tác CREATE USER có thể theo sau bởi một lệnh, ví dụ: đối với việc cài đặt một mật khu. Đặc tả các lệnh đó nằm ngoài phạm vi của tiêu chuẩn này.

9.2.2.2. Sử dụng có điều kiện và an toàn

Lệnh CREATE USER chỉ có thể được thực hiện bởi người sử dụng với hồ sơ DB_O hoặc DBOO với các quyền hạn mô tả trong Bảng 1. Id người sử dụng phải là duy nhất.

9.2.2.3. Thông điệp lệnh

Thao tác CREATE USER liên quan đến câu lệnh m rộng của SQL sau đây:

CREATE USER <id người sử dụng> <hồ sơ người sử dụng> [<thuộc tính an ninh>,... ]

<hồ sơ người sử dụng> ::= <chủ nhân đối tượng cơ sở dữ liệu> ½ <người sử dụng cơ sở dữ liệu>

<chủ nhân đối tượng cơ sở dữ liệu> ::= DBOO

<người sử dụng cơ sở dữ liệu> ::= DBBU

<thuộc tính an ninh>::= < DO liên quan đến an ninh, xem điều 6.6>

Bảng 46 - APDU lệnh PERFORM USER OPERATION cho CREATE USER

CLA

INS

P1

P2

Trường Lc

Trường dữ liệu

 

 

 

Trường Le

Quy định trong TCVN 11165-4 (ISO/IEC 7816-4)

‘14’ (=PERFORM USER OPERATION)

‘00’, các giá trị RFU khác

81’ = CREATE USER

Độ dài của trường d liệu tiếp theo

Lp<id người sử dụng, xem điều 6.5>

Lp<hồ sơ người sử dụng:DBOO hoặc DBBU>

Các thông số tùy chọn:

Lp<thuộc tính an ninh, xem điều 6.6>

Rỗng

CHÚ THÍCH Người sử dụng với h sơ DB_O ch có th được chèn trong bảng mô tả người sử dụng trong suốt giai đoạn cài đặt cơ sở dữ liệu SCQL.

9.2.2.4. Thông điệp hồi đáp

Bảng 47 - APDU hồi đáp PERFORM USER OPERATION cho CREATE USER

Trường dữ liệu

SW1 - SW2

Rỗng

Các byte trạng thái

9.2.2.5. Điều kiện trạng thái

Các điều kiện về lỗi cụ thể sau đây có thể xảy ra:

- SW1 = ‘69’ với SW2 =

• ‘82’: Trạng thái an ninh không thỏa mãn

- SW1 = ‘6A’ với SW2 =

• ‘80’: Các thông số không chính xác trong trường dữ liệu

• ‘89’: Đối tượng (id người sử dụng) tồn tại.

9.2.3. Lệnh DELETE USER

9.2.3.1. Định nghĩa và phạm vi áp dụng

Với thao tác DELETE USER, id người sử dụng có thể bị xóa. Hàng tương ứng trong bảng mô tả người sử dụng bị xóa bỏ.

9.2.3.2. Sử dụng có điều kiện và an toàn

Thao tác DELETE USER chỉ có thể được thực hiện bởi chủ nhân người sử dụng.

Để đảm bảo các đặc quyền về tính nguyên vẹn của cơ sở dữ liệu kết hợp với người sử dng này được tự động xóa.

CHÚ THÍCH Du hoa th trong id người sử dụng với thao tác DELETE USER (xem điu 6.5) có trong trường hợp này không có ý nghĩa đặc biệt, tức là ch có hàng trong *U b xóa ở đó id người sử dụng giống hệt với id người sử dụng đã đăng ký.

9.2.3.3. Thông điệp lệnh

Hoạt động DELETE USER liên quan đến câu lệnh mở rộng SQL sau đây:

DELETE USER (id người sử dụng)

Bng 48 - APDU lệnh PERFORM USER OPERATION cho DELETE USER

CLA

INS

P1

P2

Trường Lc

Trường dữ liệu

Trường Le

Quy định trong TCVN 11165-4 (ISO/IEC 7816-4)

‘14’ (=PERFORM USER OPERATION)

‘00’, các giá trị RFU khác

‘82’ = DELETE USER

Độ dài của trường dữ liệu tiếp theo

Lp<id người sử dụng>

Rỗng

CHÚ THÍCH Người sử dụng với hồ sơ DB_O chỉ có thể được chèn trong bảng mô tả người s dụng trong sut giai đoạn cài đặt cơ s dữ liệu SCQL.

9.2.2.4. Thông điệp hồi đáp

Bảng 49 - APDU hồi đáp PERFORM USER OPERATION cho DELETE USER

Trường dữ liệu

SW1 - SW2

Rỗng

Các byte trạng thái

9.2.3.5. Điều kiện trạng thái

Các điều kiện về lỗi cụ thể sau đây có thể xảy ra:

- SW1 = ‘69’ với SW2 =

• ‘82’: trạng thái an ninh không thỏa mãn

- SW1 = ‘6A’ với SW2 =

• ‘80’: các thông số không chính xác trong trường dữ liệu

• ‘88’: không tìm thấy đối tượng tham chiếu (id người sử dụng).

 

PHỤ LỤC A

(tham khảo)

Sử dụng các thao tác SQCL

Ví dụ tiếp theo ch ra việc sử dụng và mã hóa thao tác PRESENT USER và một số thao tác SCQL khi mã hóa kích thước D trên một byte.

Các thuật ngữ viết tắt sau đây được sử dụng:

CH        =          command header          tiêu đề lệnh (=CLA INS P1. P2)

Col       =          column name                tên cột

Colde=          column definition           định nghĩa cột

Comp   =          comparison operator     toán tử so sánh

Tab       =          table name                    tên bảng

View     =          view name                     tên hiển thị

X          =          hexadecimal                  cơ số thập lục phân

PRESENT USER ‘COMPANY.DIV.SMITH’

Tiêu đ lệnh

Lc

id người sử dụng

x00140080

x11

COMPANY.DIV.SMITH

CREATE TABLE FLY (‘DEP’, ‘ARR’, ‘F_NO.U’, ‘TIME, ‘PRICE’)

Tiêu đề lệnh

Lc

Lp

Tên bảng

N

Lp

Tên cột

Lp

Tên cột

Định nghĩa cột

Lp

Tên cột

Lp

Tên cột

x00140080

x11

x03

FLY

x05

x03

DEP

x03

ARR

F_NO.U

x04

TIME

x05

PRICE

CHÚ THÍCH F_NO.U có nghĩa là giá tr trong cột F_NO là duy nhất.

CREATE VIEW FLY_A AS SELECT (‘DEP’, ‘ARR’, ‘F_NO’, ‘TIME’) FROM FLY

Tiêu đ lệnh

Lc

Lp

Tên hin th

Lp

Tên bảng

N

Lp

Tên cột

Lp

Tên cột

Lp

Tên cột

Lp

Tên cột

x00100081

x1D

x05

FLY_A

x03

FLY

x04

x03

DEP

x03

ARR

x04

F_NO

x04

TIME

GRANT SELECT ON ‘FLY_A’ TO *

Tiêu đ lệnh

Lc

Lp

Priv

Lp

Tên hiển thị

Lp

id người sử dụng

x00100085

x0A

x01

x42

x05

FLY_A

01

*

INSERT INTO ‘FLY’ VALUES (FRA’,CDG’,‘LH471’,‘0115_10:20’,‘540DM’)

Tiêu đ lệnh

Lc

Lp

Tên bảng

N

Lp

DEP

Lp

ARR

Lp

F_NO

Lp

TIME

Lp

PRICE

x0010008C

x25

x03

FLY

x05

x03

FRA

x03

CDG

x06

LH4711

x0A

0115_10:20

x05

540DM

DECLARE CURSOR FOR SELECT * FROM ‘FLY’ WHERE ‘ARR’ = ‘CDG’

Tiêu đ lệnh

Lc

Lp

Tên bảng

N

N

Lp

Tên cột

Lp

Tên cột

Toán tử so sánh

Lp

chuỗi

x00100087

x10

x03

FLY

x00

x01

x03

ARR

x01

ARR

x3D

x03

CDG

CHÚ THÍCH Toán tử so sánh ‘3D’ có nghĩa ‘bằng với’

 

MỤC LỤC

Lời nói đầu

1. Phạm vi áp dụng

2. Tài liệu viện dẫn

3. Thuật ngữ và định nghĩa

4. Thuật ngữ viết tắt và ký hiệu

5. Khái niệm cơ sở dữ liệu SCQL

6. Lệnh liên quan đến SCQL

7. Hoạt động của cơ sở dữ liệu

8. Quản lý giao dịch

9. Quản lý người sử dụng

Phụ lục A (tham khảo) S dụng các thao tác SQCL

Click Tải về để xem toàn văn Tiêu chuẩn Việt Nam nói trên.

Để được giải đáp thắc mắc, vui lòng gọi

19006192

Theo dõi LuatVietnam trên YouTube

TẠI ĐÂY

văn bản cùng lĩnh vực

văn bản mới nhất

loading
×
Vui lòng đợi