1. 程式人生 > 實用技巧 >精確比較兩張圖片

精確比較兩張圖片

 

sql語句的學習

註釋:單行註釋:-- 、# 	多行註釋:/*內容*/

1、DDL (data...) 資料定義語言

建立資料庫

	格式:create database 資料庫名稱;

建立資料庫時,判斷該庫是否存在
	
	create database if not exists 資料庫名稱;

建立資料庫時,指定資料庫的編碼集

	create database day01 character set "utf8";	

刪除資料庫 格式: drop database 資料庫名稱;

	drop database day01;

切換資料庫 : use 資料庫名稱;
	
	use day01;

展示MySQL當前管理的所有資料庫
	
	show databases;

修改資料庫的編碼格式:

	alter database 資料庫名稱 character set “新的編碼集”;
	alter database day01 character set "utf8";

檢視建立當前資料庫的語句:
	
	show create database 資料庫名稱;
	show create database day01;

=============================================================

對資料庫中表的操作

MySQL下常用資料型別:

int整數 double、float浮點數 datetime日期 char、varchar字串 

建立表:

建立表時,除了需要指定表名之外,還需要給表中的欄位資訊,具體有那些欄位 每一個欄位名稱、資料型別、約束。

建立表時 新增if not exists 如果已經存在 不會執行建立語句。

create table if not exists 表名 (
	
	欄位名 資料型別 約束,
	欄位名 資料型別 約束,
	...
	欄位名 資料型別 約束
	);

建立表時指定編碼格式

create table student(
	sname varchar(20),
	sage int
) default character set "utf8";

查看錶結構:desc student;

檢視建立表的語句:

show create table student;

修改表的名稱:

alter table 舊錶名 rename 新表名;

alter table student rename stu;

往表中新增一個欄位 並且在最後面

alter table 表名 add 欄位名稱 資料型別 約束;

alter table avstar add cup varchar(2);

往表中新增一個欄位 並且在最前面

alter table 表名 add 欄位名稱 資料型別 約束 first;

alter table avstar add id int first;

在表中某一個指定位置新增欄位

alter table 表名 add 欄位名稱 資料型別 約束 after 已存在的某個欄位名

alter table avstar add weight double after age;

刪除表中的欄位:

alter table 表名 drop 欄位名;

alter table avstar drop weight;

該變表中欄位的名稱(只改變欄位的型別和約束):

alter table 表名 modify 欄位名稱 新型別 新約束;

alter table avstar modify  cup varchar(3);

改變表中現有欄位(名稱 型別 約束一併修改):

alter table 欄位名 change 舊欄位 新欄位 新型別 新約束;

alter table avstar change `name` aname varchar(30);

刪除表:

drop table 表名;

drop table stu;

=============================================================

2、DML(data manipulation language) 資料操作語言:增、刪、改

DML操作之新增操作:格式 

新增多條資料:value
新增單挑資料:values

insert into 表名 (欄位名,欄位名,...) values/value(值1,值2,...);

向表中新增資料:
	
	insert into avstar (aname,age,weight,hobby) values ("小蒼",40,110,"ML","C");

一次新增多條資料:
insert into avstar value ("小吉",23,100,"ml","c"), 
			("小吉",23,100,"ml","c"),
			("小吉",23,100,"ml","c");


DML操作之修改資料:

語法格式:update 表名 set 欄位名 = 值,欄位名 = 值,...
[where 條件]

修改時沒有條件 就是全部修改

update avstar set cup = "D";

條件修改

update avstar set cup = "E" where weight > 100;

一次性修改多個欄位的值:

update avstar set age = 26,weight = 100 where aname = "悠亞";


DML操作之刪除資料:

語法格式 delete from 表名 [where 條件]

delete from avstar where age < 20;

delete 和 tuncate 區別:

delete 只刪除資料 不刪除索引值
tuncate 刪除表之後又建立一個新的表