MySQL數(shù)據(jù)庫簡介及常用命令

2019-01-04 11:57 更新

MySQL數(shù)據(jù)庫筆記

MySQL簡介:

1、MySQL發(fā)展史:MySQL是my ess que ell而不是myseqel。開發(fā)者是瑞典的MySQL AB公司的monty widenius,2008年被sun公司收購,09年又被Oracle公司收購。

2、 MySQL的特點:2.1免費的2.2開放源代碼的關系型數(shù)據(jù)管理系統(tǒng)2.3運行速度最快等

常用表結構:

姓名:char(4)專業(yè):varchar(100)性別:char(1)學號:char(6)總學分:decimal(4,1)照片:blob備注:text

課程號:char(3)課程名:varchar(100)開課學期:tinyint學時:smallint學分:decimal(3,1)注意:數(shù)值型不能進行加減乘除計算

常用命令:

注意:每條命令用分號結束,用回車執(zhí)行。

顯示服務器上所有的數(shù)據(jù)庫: show databases;

將MySQL數(shù)據(jù)庫切換成當前數(shù)據(jù)庫:Use mysql;

顯示數(shù)據(jù)庫中所有的表格:database chamged;

顯示當前數(shù)據(jù)庫中所有的表:Show tables;

創(chuàng)建數(shù)據(jù)庫:(創(chuàng)建)create(數(shù)據(jù)庫) database (名稱)sbslsd;

打開DOS窗口,以root身份登錄使用窗口+r鍵打開dos窗口使用DOS命令,切換到MySQL的安裝目錄bin目錄下;

Cd .. Cd .. d: cd 地址(Program Files (x86)\MySQL\MySQL Server 5.5\bin)

輸入命令:mysql -h localhost -u root -p123456MySQL -u root -p123456退出:quit;或exit;Desc 表名(xs);

查看表的結構 desc xs;

指定字符集:create database if not exists showsb character set utf8;

查看數(shù)據(jù)庫的信息:show create database 數(shù)據(jù)庫名(showsb);

查看mysql服務器識別的字符集:show character set;

更改數(shù)據(jù)庫的字符集:alter database 數(shù)據(jù)庫名(softsb) default character set gb2312;

SQL語言

SQL是strcture query language 的縮寫,是關系型數(shù)據(jù)庫的標準語言結構化 查詢 語言包括三個大的內容:

A、 DDL數(shù)據(jù)定義語言:create database table ???????

B、 DML數(shù)據(jù)操縱語言:insert update delete

C、 DCL數(shù)據(jù)控制語言:grant??????創(chuàng)建視圖(視圖也叫虛擬表;表:基本表)使用create view 語句創(chuàng)建試圖,格式如下:

Create [ or replace(將現(xiàn)有的覆蓋) ] view view_nameAs select_statement[ with [cascaded | local ]check option ]

Replace:替換

Check:檢查

option:選項

Cascaded:級聯(lián)(默認)

local:本地簡化創(chuàng)建視圖命令:Create view view_name As select_statementCreate view 視圖名 as 查詢語句

注意:視圖分為:可更新視圖和不可更新視圖。

1、 查看視圖的定義命令:Show create view view_name例:show create view 計算機專業(yè)_xsshow create view lssxcj_cjb;

2、 刪除已創(chuàng)建好的視圖命令:Drop view view_name

例:drop view 離散數(shù)學

例題1:在學生管理數(shù)據(jù)庫中為計算機專業(yè)的同學創(chuàng)建一個視圖

Create view 計算機專業(yè)_xs as select from xs where 專業(yè)=’計算機’ with check option;

使用show tables查看使用select from 視圖名_xs查看視圖中的數(shù)據(jù)

3、 創(chuàng)建學生成績視圖Create view 學生成績_xs_kc_cj asSelect 姓名,課程名,成績 from xsl,kb,cjb where xsl.學號=cjb.學號 andkb.課程號=cj.課程號;

【說明】

1. 若指定了【or replace】參數(shù),則表示如果存在同名的視圖,則覆蓋原來的視圖。

2. With check option:為可選項,不指定該項不進行相關檢查。而如果指定該選項,則可指出在可更新視圖上所進行的修改都要符合select_statement 所指定的限制條件,這樣可以確保數(shù)據(jù)修改后,仍可通過視圖看到修改的數(shù)據(jù),當視圖是根據(jù)另一個視圖定義時,with check option 給出兩個參數(shù):local(本視圖)和cascaded(級聯(lián)到所有下一級視圖)。

它們決定了檢查測試的范圍??筛乱晥D要通過視圖更新基本表的數(shù)據(jù),必須保證視圖是可更新的,既可以在insert update等語句中當中使用它們。

對于可更新的視圖,在視圖中的行為和基本表中的行之間具有一對一的關系。還有一些特定的其他結構,這類結構會使得視圖不可更新。如果視圖含下述結構中的任何一種,那么它就是不可更新的。

聚合函數(shù):max() sum() count() avg()等;

Distinct 關鍵字;Group by 子句;

Order by 子句;

Having 字句;

From 子句中包含多個表;

Select 語句中引用了不可更新的視圖Where子句中的子查詢,引用from子句中的表;視圖與表的區(qū)別視圖是從一個或多個表(或視圖)導出的虛擬表。

而表有時也稱為基本表——base table。即視圖所對應的數(shù)據(jù)不進行實際存儲,數(shù)據(jù)庫中只存儲視圖的的定義,對視圖的數(shù)據(jù)進行操作時,系統(tǒng)根據(jù)視圖的定義去操作與視圖相關的基本表。在information_schema數(shù)據(jù)庫的tables表中有記錄。

Select table_schema,table_name,table_type from tables where table_schema=’xsgl2’;

視圖一經(jīng)定義后,就可以像表一樣被查詢、修改、刪除、更新。使用視圖有以下優(yōu)點:

1、 為用戶集中數(shù)據(jù),簡化用戶的數(shù)據(jù)查詢、修改、刪除和更新;

2、 屏蔽數(shù)據(jù)庫的復雜性;

3、 簡化用戶的權限管理;

4、 便于數(shù)據(jù)共享;

5、 可以重新組織數(shù)據(jù)以便輸出到其他應用程序中;

以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號