資料定義語言: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 表空間名稱;
資料操作語言:dml刪除表空間連帶刪除資料檔案
drop tablespace 表空間名稱 including contents and datafiles;
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:可以建立檢視、索引、序列、儲存過程等
資料查詢語言:dql給使用者分配角色
grant dba(許可權) to 使用者名稱;
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...