1、建立預設字元集庫
下面已預設格式的字元集庫
mysql> create database Ysolin;
Query OK, 1 row affected (0.00 sec)
mysql> show create database Ysolin\G
*************************** 1. row ***************************
Database: Ysolin
Create Database: CREATE DATABASE `Ysolin` /*!40100 DEFAULT CHARACTER SET latin1 */
1 row in set (0.00 sec)
2、建表文法格式
create table<表名>(
<字段名1><類型1>,
…
<字段名n><類型n>
);
3、建表語句例子
mysql> use Ysolin
Database changed
mysql> create table student(
-> id int(4) not null,
-> name char(20) not null,
-> age tinyint(2) not null default '0',
-> dept varchar(16) default NULL
-> );
Query OK, 0 rows affected (0.01 sec)
mysql> show create table student\G
Table: student
Create Table: CREATE TABLE `student` (
`id` int(4) NOT NULL,
`name` char(20) NOT NULL,
`age` tinyint(2) NOT NULL DEFAULT '0',
`dept` varchar(16) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
注釋:
CREATE TABLE `student` ( CREATE TABLE 表示建立表的固定關鍵字,student為表名
`id` int(4) NOT NULL, 學号列,數字類型,長度為4,不能為空值
`name` char(20) NOT NULL, 名字列,定長字元類型,長度20,不能為空
`age` tinyint(2) NOT NULL DEFAULT '0', 年齡列,很小的數字類型,長度為2,不能為空
`dept` varchar(16) DEFAULT NULL 系别列,變長字元類型,長度為16,預設為空
) ENGINE=MyISAM DEFAULT CHARSET=latin1 引擎和字元集,引擎預設MyISAM,字元集繼承庫的latin1
注意:MySQL501和MySQL5.5環境預設的引擎是不一樣的,如果想控制表的引擎,就要在建表語句裡面顯示的指定引擎建表
MySQL5.1及以前,預設引擎為MyISAM
MySQL5.5以後,預設引擎為InnoDB
4、檢視表結構
mysql> desc student;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
| id | int(4) | NO| | NULL ||
| name | char(20) | NO| | NULL ||
| age | tinyint(2) | NO| | 0 ||
| dept | varchar(16) | YES || NULL | |
4 rows in set (0.00 sec)
5、MySQL表的字段類型
(1)數字類型
列類型
需要的存儲量
TINYINT
1位元組
SMALLINT
2位元組
MEDIUMINT
3位元組
INT
4位元組
INTEGER
BIGINT
8位元組
FLOAT(X)
4如果X<=24或8如果25<=X=53
FLOAT
DOUBLE
8個位元組
DOUBLE PRECISION
REAL
DECIMAL(M,D)
M位元組(D+2,如果M<D)
NUMERIC(M,D)
M位元組(D+2,如果D<M)
(2)日期和時間類型
MySQL資料類型
含義
date
3位元組,日期,格式:2014-09-18
time
3位元組,時間,格式:08:42:30
datetime
8位元組,日期時間,格式:2014-09-18 08:42:30
timestamp
4位元組,自動存儲記錄修改的時間
year
1位元組,年份
(3)字元串數量類型
char(n)
固定長度,最多255個字元
varchar(n)
可變長度,最多65535個字元
tinytext
可變長度,最多255個字元
text
mediumtext
可變長度,最多2的24次方-1個字元
longtext
可變長度,最多2的32次方-1個字元
ENUM(‘value1’, ‘value2’,…)
1或2個位元組,取決于枚舉值得數目(最大值65535)
SET(‘value1’, ‘value2’,…)
1,2,3,4或8位元組,取決于集合成員的數量(最多64個成員)
常有資料類型:
1.INT[M]型:正常大小整數類型
2.DOUBLE[(M,D)] [ZEROFILL]型:正常大小(雙精密)浮點數字類型
3.DATE日期類型:支援的範圍是1000-01-01到9999-12-31.MySQL以及YYYY-MM-DD格式來顯示DATE值,但是運作你使用字元串或數字把值賦給DATE列
4.CHAR(M)型:定長字元串類型,當存儲時,總是使用空格填滿右邊指定的長度
5.BLOB TEXT類型:最大長度為655535(2^16-1)個字元
6.VARCHAR型:變長字元串類型
6、檢視建表結構
mysql> show columns from student;
7、檢視已建表的語句
mysql> show create table student\G
本文轉自 運維小當家 51CTO部落格,原文連結:http://blog.51cto.com/solin/1875482,如需轉載請自行聯系原作者