Hi! Could we please enable some services and cookies to improve your experience and our website?

SQLize Online / PHPize Online  /  SQLtest Online

A A A
Share code      Blog   Popular   FAQ

Online Sandbox for SQL and PHP: Write, Run, Test, and Share SQL Queries and PHP Code

Copy Format Clear
-- 创建成就系统表 CREATE TABLE achievements ( id SERIAL PRIMARY KEY, title VARCHAR(100), reward_gold INT, is_unlocked BOOLEAN DEFAULT false ); -- 编写解锁函数 CREATE FUNCTION unlock_achievement( achievement_id INT, player_id INT ) RETURNS VOID AS $$ BEGIN UPDATE achievements SET is_unlocked = true WHERE id = achievement_id; UPDATE players SET gold = gold + (SELECT reward_gold FROM achievements WHERE id = achievement_id) WHERE id = player_id; END; $$ LANGUAGE plpgsql; -- 测试运行 INSERT INTO achievements (title, reward_gold) VALUES ('First Blood', 100); SELECT unlock_achievement(1, 1); -- 解锁成就1给玩家1

Stuck with a problem? Got Error? Ask ChatGPT!