Sql的分類
DDL**(Data Definition Language):數(shù)據定義語言,用來定義數(shù)據庫對象:庫、表、列等;CREATE、ALTER、DROP
DML***(Data Manipulation Language):數(shù)據操作語言,用來定義數(shù)據庫記錄(數(shù)據);INSERT、UPDATE、DELETE
DCL(Data Control Language):數(shù)據控制語言,用來定義訪問權限和安全級別;
DQL*****(Data Query Language):數(shù)據查詢語言,用來查詢記錄(數(shù)據)。
SELECT
*注意:sql語句以;結尾
DDL:操作數(shù)據庫、表、列等
使用的關鍵字:CREATE、ALTER、DROP
3.1 操作數(shù)據庫
創(chuàng)建
create database
mydb1;
Create database mydb2 character set gbk;
Create database mydb3 character set gbkCOLLATEgbk_chinese_ci;
查詢
查看當前數(shù)據庫服務器中的所有數(shù)據庫
show databases;
查看前面創(chuàng)建的mydb2數(shù)據庫的定義信息
Showcreatedatabase mydb2;
刪除前面創(chuàng)建的mydb3數(shù)據庫
Drop database mydb3;
修改
查看服務器中的數(shù)據庫,并把mydb2的字符集修改為utf8;
alter database mydb2character set utf8;
刪除
drop database mydb3;
*其他:
查看當前使用的數(shù)據庫
select database();
切換數(shù)據庫
use mydb2;
3.2 操作數(shù)據表
*語法:
create table表名(
字段1字段類型,
字段2字段類型,
...
字段n字段類型
);
常用數(shù)據類型:
int:整型
double:浮點型,例如double(5,2)表示最多5位,其中必須有2位小數(shù),即最大值為999.99;
char:固定長度字符串類型;char(10)'abc'
varchar:可變長度字符串類型;varchar(10) 'abc'
text:字符串類型;
blob:二進制數(shù)據類型,例如圖像,視頻等;
date:日期類型,格式為:yyyy-MM-dd;
time:時間類型,格式為:hh:mm:ss
timestamp:時間戳類型yyyy-MM-dd hh:mm:ss會自動賦值
datetime:日期時間類型yyyy-MM-dd hh:mm:ss
當前數(shù)據庫中的所有表
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;
查看表格的創(chuàng)建細節(jié)
SHOW CREATE TABLE user;
修改表的字符集為gbk
ALTER TABLE user CHARACTER SET gbk;
列名name修改為username
ALTER TABLE user CHANGE name username
varchar(100);
刪除表
DROP TABLE user ;