While this part of CallManager is probably "no user serviceable parts inside" for purposes of TAC support, this task is actually easily accomplished.
Look in C:\Program Files\Cisco\CallManagerAttendant\bin for the MSDOS batch file "builddir.bat", which is run once an hour to generate a copy of the directory out of LDAP. You can modify this to your taste to pull a directory out of your SQL database. When run, it drops a file called "AutoGenerated.txt" in C:\Program Files\Cisco\CallManagerAttendant\userlists. The format is very obvious. The AC client will download this file on startup and use it for directory lookups so long as you don't have it configured to go direct-to-LDAP, which is not the default.
The fact that the directory is called userlistS makes me think you could drop multiple files in there, and therefore not be forced to modify the builtin files, but I have not tested this.