數據定義語言,用來定義數據庫對象:庫、表、列等;
使用關鍵字:CREATE、 ALTER、DROP
一.操作數據庫(DDL)
1.創建數據庫
語法:CREATE DATABASE 數據庫名
例:
CREATE DATABASE mydb1;(常用)
CREATE DATABASE mydb2 CHARACTER SET utf8; --指定字符集
CREATE DATABASE mydb3 CHARACTER SET gbk COLLATE gbk_chinese_ci ; --指定字符集和該字符集的校對規則
2.查詢
查看當前數據庫服務器中的所有數據庫
SHOW DATABASES;
查看前面創建的mydb2數據庫的定義信息
SHOW CREATE DATABASE mydb2;
刪除前面創建的mydb3數據庫
DROP DATABASE mydb3;
3.修改
查看服務器中的數據庫,並把mydb2的字符集修改爲gbk;
ALTER DATABASE mydb2 CHARACTER SET gbk;
4.刪除
DROP DATABASE mydb2;
5.其他
查看當前使用的數據庫
SELECT DATABASE();
切換數據庫
USE mydb1;
二.操作數據表(DDL)
1.添加表
語法:
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
create table student(
id int,
name varchar(20),
chinese float,
english float,
math float
);
2.插入多條數據
語法:insert into <表名> [(<屬性名清單>)] values (<常量清單>)
屬性名清單的參數跟常量清單的值要一一對應,如屬性名清單是表中的所有屬性,則可以省略不寫。
insert into student(id,name,chinese,english,math) values(1,'張小明',89,78,90);
insert into student(id,name,chinese,english,math) values(2,'李進',67,98,56);
insert into student(id,name,chinese,english,math) values(3,'王五',87,78,77);
insert into student(id,name,chinese,english,math) values(4,'李一',88,98,90);
insert into student(id,name,chinese,english,math) values(5,'李來財',82,84,67);
insert into student(id,name,chinese,english,math) values(6,'張進寶',55,85,45);
insert into student(id,name,chinese,english,math) values(7,'黃蓉',75,65,30);
或
insert into student(id,name,chinese,english,math)
values(8,'張小明',89,78,90),
(9,'王五',96,75,95),
(10,'李四',81,52,78),
(11,'張三',85,72,68);
3.查詢當前數據庫中的所有表
show tables;
4.查看錶的字段信息
desc student;
alter語法:
alter table <表名>
//爲表添加新列或者表級完整性約束,且新列必須允許爲空
[add <列名><數據類型>[列的完整性約束]]|[add<表級完整性約束>]
//修改表中原有列的數據類型,不修改類名。通常當該列上有約束定義時,不能修改數據類型
[alter column <列名> <新的數據類型>]
// 在表中刪除一個原有的列
[drop column <列名>]
//刪除原有的表級完整性約束,刪除時指定要刪除的約束名稱
[drop constraint <表級完整性約束>]
5.給表添加一列,列名爲sex,類型爲字節類型varchar
alter table student add age varchar(10);
6.修改age列,使其類型爲int。
alter table student modify age int;
7.刪除age列,一次只能刪一列。
alter table student drop age;
8.表名改爲user。
rename table student to user;
9.查看錶格的創建細節
show create table user;
10.修改表的字符集爲gbk
alter table user character set gbk;
11.列名name修改爲username
alter table user change name username varchar(50);
12.給sid添加主鍵約束
alter table stu add CONSTRAINT PRIMARY key(sid);//
13.刪除表
drop table user;
如有錯誤,還請指正哦~