Không có một hàng nào nhưng một dạng xem có chứa một hàng, đến lượt nó, sẽ cập nhật bảng thực thực tế.
Điều này có thể được thực hiện thông qua chế độ xem bảng cụ thể cho mỗi học sinh (vâng, nó sẽ là một cấu trúc DB lộn xộn). Cấp quyền truy cập vào dạng xem cho người dùng này chỉ cho phép chọn / chỉ cập nhật và khóa chính sẽ không thể cập nhật được. Bảng chính sẽ tự cập nhật khi chế độ xem được cập nhật.
CREATE SCHEMA `example` ;
CREATE TABLE `example`.`student` (
`id` INT NOT NULL,
`name` VARCHAR(45) NULL,
`email` VARCHAR(45) NULL,
PRIMARY KEY (`id`));
INSERT INTO `example`.`student` (`id`, `name`, `email`) VALUES ('1', 'bob', '[email protected]');
USE `example`;
CREATE
OR REPLACE SQL SECURITY DEFINER
VIEW `student_1` AS
SELECT
`student`.`id` AS `id`,
`student`.`name` AS `name`,
`student`.`email` AS `email`
FROM
`student`
WHERE
(`student`.`id` = '1');
CREATE USER 'student_1_user'@'localhost' IDENTIFIED BY 'user_password';
GRANT SELECT,UPDATE ON example.student_1 TO [email protected] IDENTIFIED BY 'user_password';
UPDATE example.student_1 SET email='[email protected]'; // note no primary key needed or allowed