PLAN A> Необходимо сохранить таблицу (ключи), которая содержит последний цифровой идентификатор, сгенерированный для различных объектов. В этом случае объект является «пользователем». Таким образом, таблица будет содержать два столбца, а именно: entity varchar (100) и lastid int.
После этого вы можете записать функцию, которая получит имя объекта и возвращает инкрементированный идентификатор. Используйте этот идентификатор, связанный со строковым компонентом «SISI», который должен быть передан MySQL для вставки в базу данных.
Ниже приводится таблица MySQL tblkeys:
CREATE TABLE `tblkeys` (
`entity` varchar(100) NOT NULL,
`lastid` int(11) NOT NULL,
PRIMARY KEY (`entity`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
для MySQL Функция:
DELIMITER $$
CREATE FUNCTION `getkey`(ps_entity VARCHAR(100)) RETURNS INT(11)
BEGIN
DECLARE ll_lastid INT;
UPDATE tblkeys SET lastid = lastid+1 WHERE tblkeys.entity = ps_entity;
SELECT tblkeys.lastid INTO ll_lastid FROM tblkeys WHERE tblkeys.entity = ps_entity;
RETURN ll_lastid;
END$$
DELIMITER ;
Вызов функции образца:
SELECT getkey('user')
Пример команды Вставка:
insert into users(username, password) values ('SISI'+getkey('user'), '$password')
Plan B> Таким образом, идентификатор будет немного больше, но не потребует дополнительной таблицы. Используйте следующий SQL, чтобы получить новый уникальный ID:
SELECT ROUND(NOW() + 0)
Вы можете передать его как часть команды вставки и сцепить его со строкой компонента «SISI».
вы можете сделать функцию и установить значение, чтобы получить обновление, как то, что вы хотите ... – Addicted
@Rohan :: Есть ли возможности удалить любую запись из таблицы? –
@Rohan :: теперь скажите, сколько персонажей вы хотите получить после «SISI»? –