Skip to main content

Column Options


A table must have at least one column. Each column has to have a name and a data type. And there are several options for column data that can be used as part of the table creation command. These options modify how MySQL handles the associated column. Such  as the following;

NULL 

  •  Allows values stored as  NULL 
  •  The default option

NOT NULL
  • Disallows NULL  values 
  • Saves response time and in some cases disk space 
  • A necessity for a  PRIMARY KEY

DEFAULT
 
  •  If no value is specified by the user at insertion of new data, this data will be stored in the field AUTO_INCREMENT 
  • Only works for Integer data type columns
  • Automatically generates a unique, positive number sequence for each row in a table (for UNIQUE or PRIMARY KEY  columns) 
  • Using NULL will insert the next available number instead  
  • Not specifying a value for the column will also work 
  • Cannot exceed the upper limit of the  specific data type (i.e. 255 for a  TINYINT)   If rows are deleted containing values at the high end of a sequence, those values are not reused (for specific storage engine tables)

KEYS
 
  • A  primary key is a clause assigned to a column that uniquely identifies a single row in the table. 
  • A primary key cannot contain NULL values. 
  • A  foreign key  is a column in a table that referen ces 
  • A  unique key  is similar to a primary key, except that it can be allowed to contain  NULL values.
  • Each non-NULL value uniquely identifies a single row in the table. 

Example:
               CREATE TABLE CountryLanguage` (
              `CountryCode` char(3) NOT NULL,
               `Language` char(30) NOT NULL,
               `IsOfficial` enum('T','F') NOT NULL DEFAULT 'False',
               `Percentage` float(4,1) NOT NULL DEFAULT '0.0',
                PRIMARY KEY  (`CountryCode`,`Language`)
                );

Comments

Popular posts from this blog

PHP INTRODUCTION

                     PHP  (recursive acronym for  PHP: Hypertext Preprocessor ) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. PHP stands for  P HP:  H ypertext  P reprocessor PHP is a server-side scripting language, like ASP PHP scripts are executed on the server PHP supports many databases (MySQL, Informix, Oracle, Sybase, Solid, PostgreSQL, Generic ODBC, etc.) PHP is an open source software PHP is free to download and use Why PHP? PHP runs on different platforms (Windows, Linux, Unix, etc.) PHP is compatible with almost all servers used today (Apache, IIS, etc.) PHP is FREE to download from the official PHP resource:  www.php.net PHP is easy to learn and runs efficiently on the server side What can PHP do? Anything. PHP is mainly focused on server-side scripting, so you can...

Self Joins

A table name is always ambiguous when table is joined to itself using a self-join. For example, the Country table in the world database contains an IndepYear column indicating the year in which each country achieved independence. To find all countries that have the same year of independence as some given country, a self-join can be used. However, the query cannot be written like this: mysql> SELECT IndepYear, Name, Name -> FROM Country JOIN Country -> ON IndepYear = IndepYear AND Name = 'Qatar'; ERROR 1066 (42000): Not unique table/alias: 'Country' Furthermore, the ambiguity cannot be removed from column references by preceding them with table name qualifiers because the names remain identical: mysql> SELECT Country.IndepYear, Country.Name, Country.Name -> FROM Country JOIN Country -> ON Country.IndepYear = Country.IndepYear -> AND Country.Name = 'Qatar'; ERROR 1066 (42000): Not unique table/alias: 'Country' It ...