資料庫語言

2021-08-08 20:21:10 字數 3985 閱讀 8503

資料定義語言:ddl

create、drop、alter等語句

建立資料庫

create

database 資料庫名;

create

database 資料庫名 character

set 字符集;

檢視資料庫

show databases;//檢視資料庫中的所有的資料庫

show

create

database 資料庫名;//檢視指定的資料庫

desc 表名;//檢視表結構

刪除資料庫

drop

database 資料庫名稱;

修改資料庫

修改表新增列

alter

table 表名 add 列名 型別(長度) 約束;

修改表修改列的型別長度及約束

alter

table 表名 modify 列名 型別(長度) 約束;

注意: 如果有資料,必須注意資料型別 varchar-->int 容易有錯誤資料

修改表修改列名

alter

table 表名 change 舊列名 新列名 型別(長度) 約束;

修改表刪除列

alter

table 表名 drop 列名;

注意: 如果列中有資料,資料就會一起刪除了,需謹慎

修改表名

rename table 表名 to 新錶名;

修改表的字符集

alter

table 表名 character

set 字符集;

切換資料庫

use 資料庫名;

檢視正在使用的資料庫

select

database();

建立表空間

create tablespace 表空間名稱

datafile '檔案所在目錄\表空間名稱.dbf'

size

100m (初始大小100兆)

autoextend on

next

10m; (自動增長,每次增長10兆)

在表空間中建立使用者

create

user 使用者名稱

identified by 密碼

default tablespace 表空間名稱(給使用者分配預設表空間);

刪除表空間

drop tablespace 表空間名稱;

刪除表空間連帶刪除資料檔案

drop tablespace 表空間名稱 including contents and datafiles;

資料操作語言:dml

insert(插入)、update(修改)、delete(刪除)語句

插入資料

向表中插入某些列

insert

into 表 (列名 1,列名 2,列名 3..) values (值 1,值 2,值 3..);

新增資料格式,不考慮主鍵

insert

into 表名(列名:不包含主鍵) values (值:不包含主鍵);

向表中插入所有列(需要給出主鍵)

insert

into 表 values (值 1,值 2,值 3..);

批量寫入

insert

into 表名(列名 1,列名 2,..) values (值 1,值 2,..),(值 1,值 2,..)...;

注意:

1.插入的資料應與字段的資料型別相同

2.資料的大小應該在列的長度範圍內

3.在 values 中列出的資料位置必須與被加入列的排列位置相對應

4.除了數值型別外,其它的字段型別的值必須使用引號引起

5.如果要插入空值,可以不寫字段,或者插入 null

6.對於自動增長的列在操作時,直接插入 null 值即可

更新資料

update 表名 set 欄位名=值,欄位名=值;

update 表名 set 欄位名=值,欄位名=值 where 條件;

注意:

1.列名的型別與修改的值要一致

2.修改值的時候不能超過其最大長度

3.值如果是字元或者日期需要加 「 」

刪除資料

刪除表結構

drop

table 表名;

逐條刪除,不清空 auto_increment 記錄數

delete

from 表名 [where 條件];

直接將表刪除,重新建表,auto_increment 將置為零

truncate

table 表名;(資料量大時效率高)

資料控制語言:dcl

grant、revoke等語句

查詢當前使用者的角色

select * from role_sys_privs;

許可權分類

dba:最高許可權

connect:可以連線資料庫,做一些簡單的增刪改

resource:可以建立檢視、索引、序列、儲存過程等

給使用者分配角色

grant dba(許可權) to 使用者名稱;

資料查詢語言:dql

select語句

查詢資料庫

查詢指定字段

select 欄位1,欄位2,...from 表名;

查詢表中所有字段

select * from 表名;

去除重覆記錄

select

distinct 字段 from 表名;

表別名查詢

select * from 表名 as 別名;(as可省略)

列別名查詢

select 欄位名 as 別名 from 表名;(as可省略)

直接對列進行運算

select (1+2);

其他

按照使用者匯出資料(cmd視窗)

expsystem/密碼 owner=使用者 file=本地路徑\檔名.dmp

按照使用者匯入資料(cmd視窗)

imp system/密碼 file=本地路徑\檔名.dmp fromuser=使用者1 touser=使用者2

按照表匯出資料(cmd視窗)

exp 使用者/密碼 file=本地路徑\表名.dmp tables=表名

按照表匯入資料(cmd視窗)

imp 使用者/密碼 file=本地路徑\表名.dmp tables=表名

跨使用者查詢其他使用者下的表

select * from scott.emp;

同義詞:方便跨使用者查詢其他使用者下的表,資料還在scott使用者下

create synonym s_emp for scott.emp;

select * from s_emp;

跨使用者複製表(select查詢建立表)

create

table emp as

select * from scott.emp;

select * from emp;

資料庫語言

1.dml語言 資料操作語言 用於運算元據庫物件中所包含的資料。1 insert 新增資料語句 2 update 更新資料語句 3 delete 刪除資料語句 2.insert命令 1 語法 insert into 表名 欄位1,欄位2,欄位3.values 值1 值2 值3 2 注 欄位或值之間用...

資料庫語言

資料庫語言類似於高階語言,是使用者與dbms之間的媒介,是使用者與計算機之間的媒介。它包括資料描述語言和資料操縱語言兩大部分,前者負責描述和定義資料庫,後者負責對資料進行各種操作。1資料描述語言 資料描述語言 data description language,ddl 的任務是對資料庫的邏輯設計和物...

資料庫語言

資料庫目錄 資料庫 mysql初識 資料庫 mysql表操作 資料庫 mysql記錄操作 資料庫 mysql索引原理 python與資料庫 與mysql的常用操作 redis學習 redis發布訂閱 redis持久化rdb與aof redis不重啟,切換rdb備份到aof備份 centos下redi...