Ne, ani jeden řádek ale pohled, který obsahuje jeden řádek, který naopak aktualizuje skutečnou skutečnou tabulku.
To lze provést pomocí specifického zobrazení tabulky na studenta (ano, bude to chaotická struktura DB). Udělte přístup k zobrazení tomuto uživateli pouze povolte pouze výběr/aktualizace a primární klíč nebude možné aktualizovat. Hlavní tabulka se aktualizuje sama při aktualizaci pohledu.
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', 'example@sqldat.com');
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 example@sqldat.com IDENTIFIED BY 'user_password';
UPDATE example.student_1 SET email='example@sqldat.com'; // note no primary key needed or allowed