I made a start setting up a DB structure for multiple language websites, but I have the feeling that I miss something and I can't put my finger on what it is. This are the tables I have so far:
Code MySQL:
CREATE TABLE IF NOT EXISTS `languages` (
  `language_id` TINYINT(2) NOT NULL AUTO_INCREMENT,
  `language` VARCHAR(12) DEFAULT NULL,
  `country_flag` CHAR(8) DEFAULT NULL,
  `isActive` TINYINT(1) NOT NULL DEFAULT '0',
  PRIMARY KEY  (`language_id`),
  UNIQUE KEY `language` (`language`)
) ENGINE=INNODB  DEFAULT CHARSET=utf8;
 
CREATE TABLE IF NOT EXISTS `pages` (
  `page_id` TINYINT(2) NOT NULL AUTO_INCREMENT,
  `page_address` VARCHAR(128) DEFAULT NULL,
  PRIMARY KEY  (`page_id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8;
 
CREATE TABLE IF NOT EXISTS `content` (
  `content_id` TINYINT(2) NOT NULL AUTO_INCREMENT,
  `page_id` TINYINT(2) NOT NULL DEFAULT '0',
  `title` VARCHAR(40) DEFAULT NULL,
  `heading` VARCHAR(255) DEFAULT NULL,
  `content` TEXT,
  PRIMARY KEY  (`content_id`),
  KEY `page_id` (`page_id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 ;
Those tables are self explaining I guess. table languages holds the different languages with the requested number of languages set to active. table pages are the actual pages in the website: about_us.html etc. table content holds the actual content for the different pages. And at this point I have a block! I think I need at least 1 if not more relational tables. Or should I add another field language_id to the content table? Can anyone tell me If I miss something here or that I'm on the right track