Appsheet là nền tảng tạo ứng dụng từ các bảng tính hoặc cơ sở dữ liệu mà không cần biết lập trình. Các bảng dữ liệu chứa thông tin là yếu tố cần thiết để tạo ứng dụng trên Appsheet.
Nếu ứng dụng có nhiều bảng dữ liệu và các bảng này được liên kết với nhau thì mỗi bảng cần một khóa (key) với các giá trị không trùng lặp. Vậy khóa (key) là gì? Cùng Gitiho tìm hiểu ngay cách thiết lập khóa cho một cột trong Appsheet trong bài viết này nhé!
Khóa (key) trong Google Appsheet là một cột chứa các giá trị duy nhất không thể trùng lặp trong bảng dữ liệu. Khóa xác định hàng đó là duy nhất và cho phép thao tác như thêm, sửa, xóa và liên kết các bảng.
Khóa còn được gọi là ID hoặc mã số, có thể là số, chữ cái, từ hoặc ký tự đặc biệt. Tuy nhiên, không phải loại dữ liệu nào cũng thích hợp để sử dụng làm khóa. Chẳng hạn như:
Ví dụ, trong một ứng dụng quản lý kho, bạn có thể sử dụng một bảng dữ liệu (Khách hàng) như sau:
Mã KH | Tên khách hàng | Số điện thoại | |
KH001 | Nguyễn Thị Hằng | 0987654321 | hang.nguyen@gitiho.com |
KH002 | Lê Văn Tùng | 0901234567 | tung.le@gitiho.com |
KH003 | Trần Minh Tuấn | 0976543210 | tuan.tran@gitiho.com |
KH004 | Hoàng Thị Hoa | 0912345678 | hoa.hoang@gitiho.com |
KH004 | Vũ Đức Anh | 0965432109 | anh.vu@gitiho.com |
Trong ví dụ này, chúng ta có thể chọn cột Mã KH làm khóa cho bảng dữ liệu, vì mỗi mã khách hàng là duy nhất và không trùng lặp. Chúng ta không nên chọn cột Tên Khách hàng hay Email làm khóa, bởi có thể tên hay email sẽ giống nhau.
Vào phần Data trong menu chỉnh sửa của Appsheet > chọn bảng dữ liệu cần đặt khóa.
Trong bảng dữ liệu đó, chọn cột muốn đặt làm khóa > tích chọn Key trong phần Update Behavior > nhấn Done.
Sau khi thiết lập khóa cho cột trong bảng dữ liệu xong, bạn có thể sử dụng các tính năng khác như tạo biểu mẫu, biểu đồ thống kê, tạo quan hệ giữa các bảng hoặc công thức tính toán.
Trong AppSheet, có các loại khóa sau:
Trong nhiều trường hợp, các bảng dữ liệu chứa một loại khóa tự nhiên, đó là một trường đơn hoặc sự kết hợp của một số trường khác, mà mỗi giá trị duy nhất có thể xác định một hàng cụ thể trong bảng.
Một ví dụ thường thấy về khóa tự nhiên là khi bạn có một trường đơn chứa giá trị độc nhất xác định mỗi hàng. Ví dụ, trong một bảng dữ liệu về Nhân viên, bạn có thể có một trường Mã nhân viên chứa các mã nhân viên duy nhất. Khi có một trường như vậy, đó được xem là một khóa lý tưởng.
Ví dụ:
Mã nhân viên | Tên | Chức vụ | Lương |
NV001 | Nguyễn Văn Anh | Giám Đốc | 50 triệu |
NV002 | Trần Thị Bính | Kế Toán Trưởng | 25 triệu |
NV003 | Lê Văn Chương | Nhân Viên Kỹ Thuật | 15 triệu |
NV004 | Phạm Thị Duyên | Nhân Viên Sale | 20 triệu |
NV005 | Hoàng Văn Em | Nhân Viên IT | 18 triệu |
Trong ví dụ này, cột Mã nhân viên là một khóa tự nhiên đơn cột bởi nó chứa các giá trị duy nhất và không thay đổi theo thời gian.
Đôi khi, một số bảng dữ liệu không có khóa tự nhiên. Thay vào đó, người dùng muốn hệ thống tự động tạo ra một khóa duy nhất cho mỗi hàng mới.
Để tạo ra một khóa tự động là sử dụng hàm UNIQUEID() trong thuộc tính Initial value của cột khóa. Hàm này tạo ra một giá trị văn bản độc nhất gồm 8 ký tự bao gồm chữ và số cho mỗi hàng mới.
Mã Sản Phẩm | Tên sản phẩm | Giá tiền |
PEN001 | Bút bi | 5.000 VND |
BOK002 | Cuốn sổ tay | 15.000 VND |
BOX003 | Hộp giấy A4 | 25.000 VND |
CALC004 | Máy tính cầm tay | 550.000 VND |
COL005 | Hộp bút màu | 10.000 VND |
Trong bảng này, cột "Mã sản phẩm" là một khóa do hệ thống tạo ra bằng cách sử dụng hàm UNIQUEID(). Cột này có Initial value được thiết lập là =UNIQUEID(), có nghĩa là mỗi hàng mới sẽ được gán một giá trị văn bản duy nhất.
Một số người dùng muốn có các khóa do hệ thống tạo ra theo thứ tự như 1, 2, 3... hoặc 1000, 1001, 1002... Tuy nhiên, Appsheet không hỗ trợ các khóa tuần tự vì:
Một phương án thay thế là sử dụng các khóa ngẫu nhiên:
Nếu không chỉ định một khóa và appsheet không tự động tìm được khóa phù hợp, appsheet sẽ sử dụng số thứ tự hàng trong bảng tính làm khóa (ví dụ _RowNumber). Tuy nhiên, đây không phải là một khóa tốt do có thể gây ra sự không đồng nhất nếu các thay đổi xảy ra trên các hàng.
Khi bạn liên kết bảng dữ liệu, Appsheet sẽ cố gắng tìm một cột phù hợp để sử dụng làm khóa. Appsheet sẽ ưu tiên các cột có các điều kiện sau:
Nếu không có cột nào thỏa mãn các điều kiện trên, Appsheet sẽ chọn cột đầu tiên trong bảng làm khóa và cảnh báo sẽ được hiển thị.
Những loại cột sau không nên dùng làm khóa trong bảng dữ liệu của bạn:
Hy vọng thông qua bài viết này, bạn đã hiểu rõ hơn về khóa trong Appsheet và cách thiết lập khóa cho bảng dữ liệu. Kiến thức này khá quan trọng trước khi bạn tiến tới bước tiếp theo của quá trình tạo ứng dụng bằng Appsheet đó là liên kết và cập nhật các bảng dữ liệu.
Ngoài ra, để thành thạo cách sử dụng Appsheet bao gồm tạo và tùy biến giao diện (view), hành động (action), quy trình tự dộng hóa (automation) trong Appsheet,... tham khảo ngay khóa học Làm chủ Google Appsheet từ cơ bản đến nâng cao của Gitiho.
Học Appsheet cơ bản
Lê Văn Hoà
Khóa học gồm 55 bài giảng gói gọn trong 12 giờ học sẽ bao hàm tất cả các kiến thức và ví dụ thực hành tạo ứng dụng trên Google Appsheet. Đừng bỏ lỡ khóa học tuyệt vời này với mức giá ưu đãi 30% bạn nhé. Gitiho chúc bạn thành công!
Gitiho đã cho ra mắt khóa học Google Sheets từ Cơ bản đến Nâng cao, công cụ thay thế Excel giúp bạn hoàn toàn có thể tự tin phân tích và xử lý dữ liệu trên Google Sheet, lập bảng biểu, báo cáo trực quan và hơn thế nữa. Bấm vào để học thử ngay!