(一)SQL 基礎知識

2022-06-22 13:27:09 字數 2429 閱讀 6153

sql是乙個標準的資料庫語言,是面向集合的描述性非過程化語言。

大多數資料庫公司從以下兩方面來解決此問題:

1)擴充sql,在sql中引入過程性結構

2)把sql嵌入到高階語言中

表(table)

檢視(view)

索引(index)

同義詞(syn)

聚簇(cluster)

資料庫操作:

建立資料庫:create database 庫名  例如:create database db1  //建立乙個名為db1的資料庫

刪除資料庫:drop database 庫名  例如:create database db1  //刪除名為db1的資料庫

檢視資料庫:show databases  //顯示所有庫名

使用資料庫:use 庫名

重新命名資料庫:停止服務 -> 修改資料庫所在資料夾的名稱 -> 啟動服務

資料表操作:

建立資料表:create table 表名  例如:create table tb1  //建立乙個名為tb1的表,例如create table tb1 (id int)

刪除資料表:drop table 表名  例如:drop table tb1  //刪除乙個名為tb1的表  drop table if exists tb5(若存在則刪除)

重新命名資料表:rename table 表1 to 表2

檢視資料表:show tables  //顯示當前庫中的所有表名

檢視表結構:describe 表名

修改表結構:

新增字段:alter table 表名 add 列名 屬性   例如:alter table tb1 add id int  //給表tb1中增加乙個欄位id,屬性為int  alter table tb1 add addr varchar(10) after id(在id列後增加addr列)

刪除字段:alter table 表名 drop 列名  例如:alter table tb1 drop id  //刪除表tb1中的id欄位

修改欄位名稱:alter table 表名 change 列名 新列名 屬性  例如:alter table tb1 change id  id_new int  //將表tb1的id欄位名稱改為id_new

修改字段屬性:alter table 表名 change 列名 列名 新屬性  例如:alter table  tb1 change id int decimal  //將表tb1的id欄位屬性int改為decimal

修改字段屬性:alter table 表名 modify 列名 新屬性  例如:alter table tb1 modify id decimal

修改欄位id為主鍵自增長:alter table tb_1 change id id int primary key auto_increment

取消主鍵的自增長屬性:alter table tb1 change id id int(這一句只取消自增長,不會取消主鍵)

刪除主鍵:alter table 表名 drop primary key

表中資料操作(增刪改查):

插入資料:insert into 表名(列1,列2) values (值01,值02),(值11,值12)

查詢資料:select 列名 from 表名 where 查詢條件

修改資料:update 表名 set  列名=值 where 條件

刪除記錄:delete from 表名 where 條件

資料複製:

建立新錶 - 複製舊表結構及資料到新錶    create table 新錶 select * from 舊表

建立新錶 - 僅複製舊表結構  create table 新錶 select * from 舊表 where 1=2

建立新錶 - 新舊表結構不同(新錶中僅包含舊表中個別字段)  create table 新錶 select 列1,列2 from 舊表

複製舊表資料到新錶(表結構相同)insert  into 新錶 select * from 舊表

複製舊表資料到新錶(表結構不同)insert into 新錶(列1,列2) select 列1,列2 from 舊表

grant賦予許可權:

grant 許可權1,許可權2,…許可權n on 資料庫名稱.表名稱 to 使用者名稱@使用者位址 identified by 『密碼』;

例如:給所有host下的zy使用者,賦予所有資料庫和表的一切許可權

mysql> grant all privileges on *.* to zy@'%' identified by '123456' with grant option;  // %表示從任何位址連線

mysql> flush privileges;  //重新整理系統許可權表,使以上grant生效

SQL基礎知識

本篇文章是講解sql的基礎知識,但也講得不全面,我只記錄了自己不懂的或者不熟悉的東西。一 在sql中簡單的查詢 1.重複的記錄 distinct 可以通過在選擇列表前的select語句中插入關鍵字distinct來消除重複的查詢結果記錄。比如 select distinct city from ci...

SQL基礎知識

sql作用 1.面向資料庫執行查詢 2.可從資料庫取回資料 3.可在資料庫中插入新的記錄 4.可更新資料庫中的資料 5.可從資料庫刪除記錄 6.可建立新資料庫 7.可在資料庫中建立新錶 8.可在資料庫中建立儲存過程 9.可在資料庫中建立檢視 10.可以設定表 儲存過程和檢視的許可權。資料庫操作語句 ...

SQL基礎知識

資料庫就是資料的倉庫,dbms資料庫管理系統同來對大資料的管理 檢索,就是對資料庫的管理。乙個dbms可以管理多個資料庫,這些不同的資料庫叫catalog或database,dbms允許把不同的database儲存在不同磁碟,每個資料庫中的表名不能相同。table 表,把不同型別的資料放到不同的區域...