> That is incorrect. It is very simple to browse the database, and > create/modify objects or even entire databases. For example: > QStringList t =3D mydb->tables(); // get a list of all tables= > mydb->exec( "CREATE TABLE tmp (id int);" ); // create a temp = table > QSqlCursor tmp( "tmp" ); // use the temp table > QSqlRecord* buf =3D tmp.primeInsert(); > buf->setValue( "id", 72 ) > tmp.insert(); // insert into the temp table > mydb->exec( "DROP DATABASE foo;" ); // drop an entire database= > The SQL language provides most, if not all, of the functionality requi= red=20 to > manipulate a relational database. The Qt SQL module provides a > database-independant API to use SQL -- with some additional classes > (QSqlCursor, QSqlIndex, etc) which offer some convenience and standard= > behavior and algorithms. > Please have a look at the sql.html file in the documentation of the=20 snapshots > for an overview, examples, etc. to find out what you can do. Well that is all true, except that you can't create/drop that kind of=20 stuff database independent. MySQL and Oracle (The ones I know well) have= =20 different syntax for creating tables, and also droping tables is=20 different since in oracle you have schemas which you don't have in MySQL= .=20 This functionality is provided with kdedb, what can later on be moved ou= t=20 of kde db is the actual DB access. I'm pretty sure you can't do this in = Qt since the database driver interface has no methods for and I know it'= s=20 database dependent. /Henrik Johnson GlobeCom AB