You could use the spell_globals table to require them to have a certain flag to scribe Rank 2 and Rank 3 spells.
Example:
Code:
mysql> select * from spell_globals;
+---------+------------+--------------+-------+
| spellid | spell_name | qglobal | value |
+---------+------------+--------------+-------+
| 24110 | Mud Shield | fskdfkdsalfa | 1 |
+---------+------------+--------------+-------+
1 row in set (0.00 sec)