一、sql概述
SQL:Structure Query Language。(結構化查詢語言)
SQL被美國國家標準局(ANSI)確定爲關係型數據庫語言的美國標準,後來被國際化標準組織(ISO)採納爲關係數據庫語言的國際標準。
各數據庫廠商都支持ISO的SQL標準。普通話是全國的語言標準,都會的
各數據庫廠商在標準的基礎上做了自己的擴展。每個地方都有自己的獨立方言
二、Sql的分類
DDL**(Data Definition Language):數據定義語言,用來定義數據庫對象:庫、表、列等; CREATE、 ALTER、DROP
DML***(Data Manipulation Language):數據操作語言,用來定義數據庫記錄(數據); INSERT、 UPDATE、 DELETE
DCL(Data Control Language):數據控制語言,用來定義訪問權限和安全級別;
DQL*****(Data Query Language):數據查詢語言,用來查詢記錄(數據)。
* 注意:sql語句以;結尾
三、DDL:操作數據庫、表、列等
3.1、操作數據庫
創建
創建一個名稱爲mydb1的數據庫
create database mydb1;
創建一個使用gbk字符集的mydb2數據庫
Create database mydb2 character set gbk;
創建一個使用gbk字符集,並帶校對規則的mydb3數據庫
Create database mydb3 character set gbk COLLATE gbk_chinese_ci;
查詢
查看當前數據庫服務器中的所有數據庫
show databases;
查看前面創建的mydb2數據庫的定義信息
show create database mydb2;
修改
查看服務器中的數據庫,並把mydb2的字符集修改爲utf8;
alter database mydb2 character set utf8;
刪除
drop database mydb2;
其他:
查看當前使用的數據庫
select database();
切換數據庫
use mydb1;
3.2、操作數據表
語法:
創建數據表:
create table 表名(
字段1 字段類型,
字段2 字段類型,
...
字段n 字段類型
);
常用數據類型:
int:整型
double:浮點型,例如double(5,2)表示最多5位,其中必須有2位小數,即最大值爲999.99;
char:固定長度字符串類型; char(10) 'abc '
varchar:可變長度字符串類型;varchar(10) 'abc'
text:字符串類型;
blob:字節類型;
date:日期類型,格式爲:yyyy-MM-dd;
time:時間類型,格式爲:hh:mm:ss
timestamp:時間戳類型 yyyy-MM-dd hh:mm:ss 會自動賦值
datetime:日期時間類型 yyyy-MM-dd hh:mm:ss
小知識:
在mysql中,字符串類型和日期類型都要用單引號括起來。'tom' '2015-09-04'
空值:null (不佔內存),’’(佔內存)
當前數據庫中的所有表
SHOW TABLES;
查看錶的字段信息
DESC employee;
在上面員工表的基本上增加一個image列。
ALTER TABLE employee ADD image blob;
修改job列,使其長度爲60。
ALTER TABLE employee MODIFY job varchar(60);
刪除image列,一次只能刪一列。
ALTER TABLE employee DROP image;
表名改爲user。
RENAME TABLE employee TO user;
查看錶格的創建細節
SHOW CREATE TABLE user;
修改表的字符集爲gbk
ALTER TABLE user CHARACTER SET gbk;
列名name修改爲username
ALTER TABLE user CHANGE name username varchar(100);
刪除表
DROP TABLE user ;