SQL通用語法 DDL

2021-10-10 17:11:14 字數 3102 閱讀 6575

替換查詢

select id,case when val=『2』 then 『男』 else 『女』 end as 『值』 from test_sys

修改預設字符集和校對規則 為utf-8

alter database test default character set utf8 default collate utf8_unicode_ci;

修改字段值

alter table 表名 alter column 欄位名 set default 『值』;

重新命名alter table 表名 change column欄位名新欄位名 varchar(20) null default 『張三』;

將 new_name 的字串長度改為 char(20) 並設定為第一行

alter table test_sys modify columnnew_namechar(20) first;

新增列alter table test_sys add columntest_valchar(20) null;

刪除列alter table test_sys drop columntest_val;

刪除主鍵 刪除外來鍵 刪除索引

alter table test_sys drop primary key;

重新命名表

rename table test_sys totest_sys1;

刪除表drop table test_sys;

檢視資料庫的全部表

show tables ;

顯示指定表的資料結構 auto_increment自動遞增

desc test.test_sys;

索引相關

給 test.test_sys庫的new_name欄位的前兩個字元建立降序索引

create index index_new_name on test.test_sys (new_name(2) desc);

建立組合索引

create index index_auto_increment on test.test_sys(new_name,val);

查詢索引

show index from test_sys;

刪除索引

drop index index_new_name on test.test_sys;

快速新增資料

insert into test_sys select * from test_sys;ï

檢視相關

#建立檢視

create view test_sys_view as select * from test_sys;

#查詢檢視

select * from test_sys_view;

#修改檢視

alter view test_sys_view as select id from test_sys;

#顯示指定的檢視

show create view test_sys_view;

#刪除儲存過程

drop procedure if exists sp_name;

游標相關

建立乙個整體的游標

use test;

delimiter $$

create procedure sp_sumofrow(out rows int)這裡要加兩個美元符號

begin

declare cid int;

declare found boolean default true;

declare cur_cid cursor for

select content_id from content;

declare continue handler for not found

set found=false;

set rows=0;

open cur_cid;

fetch cur_cid into cid;

while found do

set rows=rows+1;

fetch cur_cid into cid;

end while;

close cur_cid;

end

儲存函式相關

建立乙個儲存函式 該函式能根據傳遞過來的id返回客戶名稱

use test;

delimiter $$

drop function if existsfn_search這裡要加兩個美元符號

create functionfn_search(cid int)

returns char(20)

deterministic

begin

declare in_*** char(2);

select***into in_*** from content

where content_id=cid;

if in_*** is null then

return(select』沒該使用者』);

else if in_*** =『f』 then

return(select』女』);

else return(select』男』);

end if;

end if;

enddelimiter;

執行use test;

selectfn_search(1);

自定義函式相關

delimiter $$

drop function if existstest1這裡要加兩個美元符號

create functiontest1(a int ,b int)

returns int

begin

if (a>b) then

return a+b;

else

return a-b;

end if;

enddelimiter;

常用 SQL 通用語法 DML

可以把 多數sql語法 分為兩個部分 資料操作語言dml和資料定義語言ddl sql 結構化查詢語言 是用於執行查詢的語法。但是sql語言也包含用於更新 插入和刪除記錄的語法。注 sql 語句對大小寫不敏感。查詢和修改指令構成了sql的dml部分 操作作用 select從資料庫表中獲取資料 upda...

SQL學習(SQL的定義,通用語法,分類)

1.什麼是sql?structured query language 結構化查詢語言 其實就是定義了操作所有關係型資料庫的規則。每一種資料庫操作的方式存在不一樣的地方,稱為 方言 2.sql通用語法 1 sql 語句可以單行或多行書寫,以分號結尾。2 可使用空格和縮進來增強語句的可讀性。3 mysq...

SQL建立觸發器的通用語法

建立觸發器的通用語法如下所示 create or replace trigger trigger name triggering event on table name for each row follows another trigger enable disable when conditio...