DJ Mike's Tutorials: PHP


< ^ >

mySQL Data Types

Numeric Data Types

INT(size)
Hold integers only. Size from -2,147,483,648 to -2,147,483,647 signed, or 0 to 4,294,967,295 unsigned.
INTEGER(size)
Hold integers only. Size from -2,147,483,648 to -2,147,483,647 signed, or 0 to 4,294,967,295 unsigned.
TINYINT(size)
Hold integers only. Size from -128 to 127 signed, or 0 to 255 unsigned.
SMALLINT(size)
Hold integers only. Size from -32,768 to 32,767 signed, or 65,535 unsigned.
MEDIUMINT(size)
Hold integers only. Size from -8,388,608 to 8,388,607 signed, or 0 to 16,777,215 unsigned.
BIGINT(size)
Hold integers only. Size from -9,223,372,036,854,775,808 to -9,223,372,036,854,775,807 signed, or 0 to 18,446,744,074,709,551,615 unsigned.
DECIMAL(size,d)
Hold numbers with fractions. Fixed length of size. Maximum number of digits to the right of the decimal = d
DOUBLE(size,d)
Hold numbers with fractions. Maximum length of size. Maximum number of digits to the right of the decimal = d. Allowable values are -1.7976931348623157E+308 to -2.2250738585072014E-308, 0, and 2.2250738585072014E-308 to 1.7976931348623157E+308 to
FLOAT(size,d)
Hold unsigned numbers with fractions. Maximum length of size. Maximum number of digits to the right of the decimal = d. Defaults to 10,2. Percision can go to 24 places

Textual Data Types

CHAR(size)
Holds a fixed length string (can contain letters, numbers, and special characters). The fixed size is specified in parenthesis.
VARCHAR(size)
Holds a variable length string (can contain letters, numbers, and special characters). The maximum size is specified in parenthesis.
TINYTEXT
Holds a variable string with a maximum length of 255 characters.
TEXT
Holds a variable string with a maximum length of 65535 characters.
MEDIUMTEXT
Holds a variable string with a maximum length of 16777215 characters.
LONGTEXT
Holds a variable string with a maximum length of 4294967295 characters.
BLOB
Same as TEXT
MEDIUMBLOB
Same as MEDIUMTEXT
LONGBLOB
Same as LONGTEXT

Date Data Types

DATE(yyyy-mm-dd)
Date in yyyy-mm-dd format between 1000-01-01 to 999-12-31.
DATETIME(yyyy-mm-dd hh:mm:ss)
Date and time in yyyy-mm-dd hh:mm:ss format.
TIMESTAMP(yyyymmddhhmmss)
Timwstamp betweenmidnight, Jan. 1, 1970 and 2037. Other formats for TIMESTAMP are; yymmddhhmmss, yyymmdd and yymmdd

Misc. Data Types

ENUM(value1,value2,ect)
ENUM is short for ENUMERATED list. Can store one of up to 65535 values listed within the ( ) brackets. If a value is inserted that is not in the list, a blank value will be inserted.
SET
SET is similar to ENUM. However, SET can have up to 64 list items and can store more than one choice.

MySQL Reserved Words

The words in the following table are explicitly reserved in MySQL 5.0. Most of the words in the table are forbidden by standard SQL as column or table names.

ADD ALL ALTER
ANALYZE AND AS
ASC ASENSITIVE BEFORE
BETWEEN BIGINT BINARY
BLOB BOTH BY
CALL CASCADE CASE
CHANGE CHAR CHARACTER
CHECK COLLATE COLUMN
CONDITION CONSTRAINT CONTINUE
CONVERT CREATE CROSS
CURRENT_DATE CURRENT_TIME CURRENT_TIMESTAMP
CURRENT_USER CURSOR DATABASE
DATABASES DAY_HOUR DAY_MICROSECOND
DAY_MINUTE DAY_SECOND DEC
DECIMAL DECLARE DEFAULT
DELAYED DELETE DESC
DESCRIBE DETERMINISTIC DISTINCT
DISTINCTROW DIV DOUBLE
DROP DUAL EACH
ELSE ELSEIF ENCLOSED
ESCAPED EXISTS EXIT
EXPLAIN FALSE FETCH
FLOAT FLOAT4 FLOAT8
FOR FORCE FOREIGN
FROM FULLTEXT GRANT
GROUP HAVING HIGH_PRIORITY
HOUR_MICROSECOND HOUR_MINUTE HOUR_SECOND
IF IGNORE IN
INDEX INFILE INNER
INOUT INSENSITIVE INSERT
INT INT1 INT2
INT3 INT4 INT8
INTEGER INTERVAL INTO
IS ITERATE JOIN
KEY KEYS KILL
LEADING LEAVE LEFT
LIKE LIMIT LINES
LOAD LOCALTIME LOCALTIMESTAMP
LOCK LONG LONGBLOB
LONGTEXT LOOP LOW_PRIORITY
MATCH MEDIUMBLOB MEDIUMINT
MEDIUMTEXT MIDDLEINT MINUTE_MICROSECOND
MINUTE_SECOND MOD MODIFIES
NATURAL NOT NO_WRITE_TO_BINLOG
NULL NUMERIC ON
OPTIMIZE OPTION OPTIONALLY
OR ORDER OUT
OUTER OUTFILE PRECISION
PRIMARY PROCEDURE PURGE
READ READS REAL
REFERENCES REGEXP RELEASE
RENAME REPEAT REPLACE
REQUIRE RESTRICT RETURN
REVOKE RIGHT RLIKE
SCHEMA SCHEMAS SECOND_MICROSECOND
SELECT SENSITIVE SEPARATOR
SET SHOW SMALLINT
SONAME SPATIAL SPECIFIC
SQL SQLEXCEPTION SQLSTATE
SQLWARNING SQL_BIG_RESULT SQL_CALC_FOUND_ROWS
SQL_SMALL_RESULT SSL STARTING
STRAIGHT_JOIN TABLE TERMINATED
THEN TINYBLOB TINYINT
TINYTEXT TO TRAILING
TRIGGER TRUE UNDO
UNION UNIQUE UNLOCK
UNSIGNED UPDATE USAGE
USE USING UTC_DATE
UTC_TIME UTC_TIMESTAMP VALUES
VARBINARY VARCHAR VARCHARACTER
VARYING WHEN WHERE
WHILE WITH WRITE
XOR YEAR_MONTH ZEROFILL


The following are new reserved words in MySQL 5.0:



ASENSITIVE CALL CONDITION
CONNECTION CONTINUE CURSOR
DECLARE DETERMINISTIC EACH
ELSEIF EXIT FETCH
GOTO INOUT INSENSITIVE
ITERATE LABEL LEAVE
LOOP MODIFIES OUT
READS RELEASE REPEAT
RETURN SCHEMA SCHEMAS
SENSITIVE SPECIFIC SQL
SQLEXCEPTION SQLSTATE SQLWARNING
TRIGGER UNDO UPGRADE
WHILE    

< ^ >