Mysql 介紹
Mysql web開發一個重要的存儲數據的管理系統 可以進行增刪改查 的數據庫
Mysql 圖形化管理工具
- Navicat Form Mysql — 桌面版MySQL管理工具,它和微軟的SQLServer的管理器很像,簡單易用。Navicat的優勢在於使用圖形化的用戶界面,可以讓用戶管理更加輕鬆。
- phpMyAdmin –由PHP開發的免費web 應用
- SQL Lite Manger —SQL Lite Manager是一款基於web的開源應用程序,用於管理無服務器、零配置SQL Lite數據庫。該程序是用PHP寫成,除了記錄和應用表格格上的每一步操作,還可以控制多個數據庫。SQL Lite Manager可用於查詢數據,將MySQL查詢轉化爲兼容SQL Lite數據庫,並能創建和編輯觸發器。SQL Lite Manager有多種皮膚選項,是一個含現成語言文件的多語言資源。
Mysql 連接
mysql -uroot -h192.168.1.111 -p test
數據類型
數值類型
MySQL支持所有標準SQL數值數據類型。
這些類型包括嚴格數值數據類型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似數值數據類型(FLOAT、REAL和DOUBLE PRECISION)。
關鍵字INT是INTEGER的同義詞,關鍵字DEC是DECIMAL的同義詞。
BIT數據類型保存位字段值,並且支持MyISAM、MEMORY、InnoDB和BDB表。
作爲SQL標準的擴展,MySQL也支持整數類型TINYINT、MEDIUMINT和BIGINT。下面的表顯示了需要的每個整數類型的存儲和範圍。
類型 | 大小 | 範圍(有符號) | 範圍(無符號) | 用途 | 備註 |
---|---|---|---|---|---|
tinyint | 1字節 | (-128,127) | (0,255) | 小整數 | 常用於狀態判斷 |
smallint | 2字節 | (-32768,32767) | (0,65535) | 大整數 | |
mediumint | 3字節 | 大整數 | |||
int | 4字節 | 大整數 | |||
bigint | 8字節 | 極大整數 | |||
float | 4字節 | 單精度,浮點數值 | |||
double | 8字節 | 雙精度,浮點數值 | |||
decimal | 小數值 |
時間和日期類型
表示時間值的日期和時間類型爲DATETIME、DATE、TIMESTAMP、TIME和YEAR。
每個時間類型有一個有效值範圍和一個”零”值,當指定不合法的MySQL不能表示的值時使用”零”值。
TIMESTAMP類型有專有的自動更新特性,將在後面描述。
類型 | 大小(字符) | 範圍 | 格式 | 用途 | 備註 |
---|---|---|---|---|---|
date | 3 | 1000-01-01/9999-12-31 | YYYY-MM-DD | 日期值 | |
time | 3 | ‘-838:59:59’/’838:59:59’ | HH:MM:SS | 時間值或持續時間 | |
year | 1 | 1901/2155 | YYYY | 年份值 | |
datetime | 8 | 1000-01-01 00:00:00/9999-12-31 23:59:59 | YYYY-MM-DD HH:MM:SS | 混合日期和時間值 | |
timestamp | 4 | 1970-01-01 00:00:00/2038 | YYYYMMDD HHMMSS | 混合日期和時間值,時間戳 |
字符串類型
字符串類型指CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET。該節描述了這些類型如何工作以及如何在查詢中使用這些類型。
類型 | 大小 | 用途 | 備註 |
---|---|---|---|
char | 0-255 | 定長字符串 | |
varchar | 0-65535 字節 | 變長字符串 | |
tinyblob | 0-255字節 | 不超過 255 個字符的二進制字符串 | |
tinytext | 0-255字節 | 短文本字符串 | |
blob | 0-65 535字節 | 二進制形式的長文本數據 | |
text | 0-65 535字節 | 長文本數據 | |
mediumblob | 0-16 777 215字節 | 二進制形式的中等長度文本數據 | |
mediumtext | 0-16 777 215字節 | 中等長度文本數據 | |
longblob | 0-4 294 967 295字節 | 二進制形式的極大文本數據 | |
longtext | 0-4 294 967 295字節 | 極大文本數據 |
備註
CHAR 和 VARCHAR 類型類似,但它們保存和檢索的方式不同。它們的最大長度和是否尾部空格被保留等方面也不同。在存儲或檢索過程中不進行大小寫轉換。
BINARY 和 VARBINARY 類似於 CHAR 和 VARCHAR,不同的是它們包含二進制字符串而不要非二進制字符串。也就是說,它們包含字節字符串而不是字符字符串。這說明它們沒有字符集,並且排序和比較基於列值字節的數值值。
BLOB 是一個二進制大對象,可以容納可變數量的數據。有 4 種 BLOB 類型:TINYBLOB、BLOB、MEDIUMBLOB 和 LONGBLOB。它們區別在於可容納存儲範圍不同。
有 4 種 TEXT 類型:TINYTEXT、TEXT、MEDIUMTEXT 和 LONGTEXT。對應的這 4 種 BLOB 類型,可存儲的最大長度不同,可根據實際情況選擇。
Mysql 語句介紹
創建 數據庫
create database test
刪除數據庫
drop database test
選擇數據庫
use database test
創建數據庫表
create table table_name ( colum_name,colum_type)
CREATE TABLE IF NOT EXISTS `test_tbl`(
`id` INT UNSIGNED AUTO_INCREMENT,
`title` VARCHAR(100) NOT NULL,
`author` VARCHAR(40) NOT NULL,
`date` DATE,
PRIMARY KEY ( `runoob_id` )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
備註
- 如果你不想字段爲 NULL 可以設置字段的屬性爲 NOT NULL, 在操作數據庫時如果輸入該字段的數據爲NULL ,就會報錯。
- AUTO_INCREMENT定義列爲自增的屬性,一般用於主鍵,數值會自動加1。
- PRIMARY KEY關鍵字用於定義列爲主鍵。 您可以使用多列來定義主鍵,列間以逗號分隔。
- ENGINE 設置存儲引擎,CHARSET 設置編碼。
刪除數據庫表
drop table table_name
插入數據
insert into table_name (field1,field2,field3) values( values1,values2,values3)