《數據庫基礎》要點:
本文介紹了數據庫基礎,希望對您有用。如果有疑問,可以聯系我們。
導讀:數據庫中常用到增編削查,具體的應用一些小結,以MySQL為例來說明.
數據庫的治理是計算機的重要應用,數據的治理技術經歷了這幾個階段:
人工治理階段
文件治理階段
數據庫治理階段
什么是數據庫?
數據庫是組織、存儲、治理和加工數據的倉庫
數據庫是歷久存儲在計算機內的、有組織的、可共享的數據集合
數據庫是數據的聚合
舉例
在關系型數據庫中,由若干個數據表組成,每個數據表都有很多個行(記錄,相當于對象),每個記錄都有很多列(字段,相當于對象的屬性),表之間可以通過關鍵字段實現表之間的關系.通過關系,我們可以更靈活的把持數據庫中的數據.
特色:
表中的每一列都弗成再分的基本屬性
各列被指定為分歧的名字
各行不允許反復
列和行順序無關
關系型數據庫體系主要有:
Access、FoxPro、SQL Server、MySQL、Oracle......
Access 小型數據庫,配置簡單、移植方便、但拜訪率比較低,適合小型網站(如個人網站).
SQL Server 中型數據庫,運行穩定、拜訪率高、速度快,但配置、移植比較復雜. 利用SQL Server 的導入功能可以將Acess數據庫轉化為SQL Server 數據庫
Oracle 具有伸縮性的大型網站,拜訪率高.
MySQL是開源的關系型數據庫服務軟件
民間站點:http://www.mysql.com
MySQL特色:
多過程、多用戶
簡單易用、查詢速率快
基于C/S架構
平安可靠
拜訪數據庫數據表中數據應用SQL(結構化查詢語句),常用的:
select 語句 -- 查詢數據
insett 語句 -- 添加記載
delete/drop 語句 --刪除記載
uodate 語句 --跟新記載
主要的實現數據庫的查詢,取得滿足指定條件的記錄集.而選出相符條件的虛擬數據表
語法:
select 字段1名,字段2名 ... from 表(where前提)
例如查詢相符條件的記錄,并顯示所有字段的數據
select * from test where name='admin';
2. 選取相符條件的記錄,并只顯示指定字段的數據
select name,password from test where name='admin'
select 語句示例:
選取相符和條件的記錄,并顯示所有字段的數據
select * from user where tel='565645123'
2. 只選取相符條件的前n條數據
select top 1 real_name,email from user where tel = '1234567'
select real_name,email from user where tel = '1234567' limit 0, 1
(limit子句可以被用于強制SELECT語句返回指定的記錄數.limit接收一個或兩個參數,參數必需是整型,第一個參數指定第一個返回記錄行的偏移量,第二個參數指定返回記錄行的最大數目.初始化記錄行的偏移量是0不是1)
運算符:
主要有四大類:算術運算符、比擬運算符、邏輯運算符、位操作運算符
where表達式運算符的使用示例:
select name,password from test where password>'123';
select name,password from test where password<'123456';
select name,password from test WHERE id>= 2;
select name,password from test where password>='123';
select name,password from test where id between 2 and 5;
select name,password from test where id not between 2 and 5;
select name,password from test where id in('1','3');
select name,password from test where id not in('1','3');
select name,password from test where name is null/not null;
select * from test where name='admin' and password='123';
select * from test where name='admin' or password='123';
select * from test where name is null or name='admin' and password='123';
select name,password from test where password like '%123%';
select 語句的非準確查詢:
select * from user where real_name like “%勇%”
常常應用在網頁搜索
Select語句的查詢成果排序 :
按某一(或多個)字段升序或降序的方式分列記錄.
語法為:Order By 字段1 ASC 又或
Order By 字段1 DESC
舉例:
select * from user order by id DESC //DESC 降序查詢
select * from user order by id ASC //ASC 升序查詢
UNION 操作符用于合并兩個或多個 SELECT 語句的結果集.請注意,UNION 內部的 SELECT語句必需擁有相同數量的列.列也必需擁有相似的數據類型.同時,每條 SELECT 語句中的列的順序必需相同.
SQL UNION 語法
select name,password from test
union
select host,address from test1;
注釋:默認地,UNION 操作符選取分歧的值.如果允許重復的值,請使用 UNION ALL
在ASP中,我們常常會添加數據到數據庫中.這項任務可以由Insert語句實現.
語 法:
Insert Into 表(字段1,字段2,……)
values(字段1的值,字段2的值,……)
典范:
添加一個用戶,用戶ID為3 用戶名為marry 用戶暗碼為 456
insert into user(id,username,password) values(3,”marry”,456)
注 意:
(1)各字段、各字段的值要用逗號分開,而且各字段和其對應的字段值在順序上要一致.
(2)如果某個字段的值為字符型或備注型,則該字段值兩邊要加引號;如果為日期/光陰型,則該字段值兩邊要加#號或引號;若為布爾型,則該字段的值為true或false;若為自動編號類型,則不要給該字段賦值
(3)設計數據表時要慎重斟酌字段下面幾個屬性的設置:“default”、“必填字段” .
如果某字段設置了“default”值,并想在某個新加的記載里把該字段設置為默認值,則該字段值填寫Default;
如果某字段“必填字段”設置為“是”,則在某個新加的記錄里,該字段必需有值或使用默認值,否則出錯.
如果對字段沒有進行特殊的設置,則可以把沒有值的字段不呈現在Insert語句中.
如果該字段是自動編號的,該字段可以不呈現在Insert語句中.
可刪除表中無用的記載來維護數據庫.
語 法:
Delete from 表 [前提]
典范:
刪除 lisi 用戶
delete from user where username='lisi';
實現數據庫中數據的更新以維護數據庫.
語 法:
Update 數據表名 set 字段1=字段值1,字段2=字段值2,…… [where 前提]
說 明:
缺省條件則改動所有記錄指定的字段值
不缺省條件則修改數據表中相符條件的記錄
示 例:
更改用戶暗碼
update user set password=555 where username='wangwu'
Mysql常用函數:
1、 select @@basedir 查詢數據庫安裝路徑
2 、select @@datadir 查詢數據庫地點目錄
3 、select version() 查詢數據庫的版本
4 、select user() 查詢以后數據庫的使用用戶
5 、select database() 以后使用數據庫的名字
歡迎參與《數據庫基礎》討論,分享您的想法,維易PHP學院為您提供專業教程。