Frames Modems Help Home Page Chipsets Search No Frames
Diary Entries See also Site Info & Diary.
29 September 2001 Now it's Chips with everything as yet more tables are created...
  I've changed the original /mfc/ table so that it can be used for both modems & modem chipsets, plus added a key (INDEX is a synonym for KEY) to the MID field in all child tables to speed up SELECTs. These keys are known as FOREIGN KEYs in SQL parlance. FOREIGN KEY exists in MySQL but does not do anything when used in a TABLE declaration, since the JOIN in a SELECT statement achieves what's necessary (see chapter 5.4.5 in the HTML help file).
 
  1. the modem Chipsets:
      CREATE TABLE chipsets (
        CID INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
        Name TINYTEXT NOT NULL,
        MID INT UNSIGNED NOT NULL,
        AtWinPrefix TINYTEXT, /* AT-Commands notes */
        AtCountry TINYTEXT,
        AtVersion TINYTEXT,
        Ati6 TINYTEXT,
        NotesHead TINYTEXT,
        NotesShort TINYTEXT,
        Notes TEXT,
        Conflict TINYTEXT,
        Uninstall TINYTEXT,
        KEY(MID)
        );
    (14 Jan - all tables continued now at 14 Jan)
  2. the Chips which make up the chipsets (KEYs - INDEXes - on TEXT or BLOB fields must have the number of characters to index on specified):
      CREATE TABLE chips (
        Ref TINYTEXT NOT NULL,
        BID TINYINT UNSIGNED NOT NULL, /* Bus type */
        FID TINYINT UNSIGNED NOT NULL, /* Function */
        CID INT UNSIGNED NOT NULL,
        TotNum TINYINT UNSIGNED, /* Chips in the modem */
        PRIMARY KEY (Ref(20), BID, FID),
        KEY(CID)
        );
  3. Types of Bus Interface (ISA, PCI etc - as well as standardising them also allows different languages as a future option):
      CREATE TABLE busTypes (
        BID TINYINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
        Name TINYTEXT NOT NULL
        );
    (8 Oct updated - 6 of these read-only Type tables were given a name change to standardise them so that they could easily be found, plus the KEY changed to a TINYINT throughout - 255 choices. They could have been made an ENUM but this way easily allows multiple languages in the future)
  4. Types of Chip function (DSP, DAA etc):
      CREATE TABLE chipTypes (
        FID TINYINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
        Name TINYTEXT NOT NULL
        );