Hi list, We're building a relatively large database with InnoDB tables. The database model is basically: store the data in a table based on the data type. So we have a param_int table for all integer type data: CREATE TABLE `param_int` ( `id` int(11) NOT NULL default '0', `name` varchar(32) NOT NULL default '', `value` int(14) NOT NULL default '0', PRIMARY KEY (`id`,`name`), KEY `name` (`name`), KEY `value` (`value`) ) TYPE=InnoDB COMMENT='integer parameters';
Etcetera for other basic types. (We did run tests with InnoDB, MyISAM, type based tables and the usual tables where all datatypes are stored in a few tables. InnoDB performed far better with larger number of records and the type based storage was easier when it comes to expanding the number of parameters). The question: I need to store flags which indicate access rights, etc. Since storing each flag in a tinyint or something similar doesn't seem efficient when the number of flags increases. My alternative was storing the flags as groups in one or more sets. The table will contain the sets for hundreds of thousands of IDs. How efficient is InnoDB with searching in such sets? Will it use an index or must it perform a full table search? Are there alternatives which are more efficient regarding search speed? Best regards, Jigal. -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]