数据库入门经典基础总结
?
數據庫,簡而言之可視為電子化的文件柜——存儲電子文件數據的處所,用戶可以對文件中的數據運行新增、提取、更新、刪除等操作。
數據庫(Database)是按照數據結構來組織、存儲和管理數據的倉庫,隨著信息技術和市場的發展,數據管理不再僅僅是存儲和管理數據,而轉變成用戶所需要的各種數據管理的方式。數據庫有很多種類型,從最簡單的存儲有各種數據的表格到能夠進行海量數據存儲的大型數據庫系統都在各個方面得到了廣泛的應用。
在信息化社會,充分有效地管理和利用各類信息資源,是進行科學研究和決策管理的前提條件。數據庫技術是管理信息系統、辦公自動化系統、決策支持系統等各類信息系統的核心部分,是進行科學研究和決策管理的重要技術手段。
?
三范式(規范):
要想滿足第二范式,必須先滿足第一范式。
要想滿足第三范式,必須先滿足第二范式。
?
第一范式:列數據不可分割。每一列都是不可分割的原子數據項,而不能是集合或數組,記錄等非原子數據項。即實體中的某個屬性有多個值時,必須拆分為不同的屬性。在符合第一范式(1NF)表中的每個域值只能是實體的一個屬性或一個屬性的一部分。簡而言之,第一范式就是無重復的域。
第二范式:主鍵,非鍵字段必須依賴于鍵字段。
要求數據庫表中的每個實例或記錄必須可以被唯一地區分。選取一個能區分每個實體的屬性或屬性組,作為實體的唯一標識,即為主鍵。
第三范式:外鍵。第三范式是第二范式的一個子集,即滿足第三范式必須滿足第二范式。簡而言之,第三范式(3NF)要求一個關系中不包含已在其它關系已包含的非主關鍵字信息。簡言之,第三范式就是屬性不依賴于其它非主屬性,也就是在滿足2NF的基礎上,任何非主屬性不得傳遞依賴于主屬性。
?
下面總結一下基礎:
1、創建數據庫
create database database_name?
2、刪除數據庫
drop database dbname
3、創建新表
create table tabname(col1 type1 [not null] [primarykey],col2 type2 [not null],..)
根據已有的表創建新表:?
A:create table tab_new like tab_old (使用舊表創建新表)
B:create table tab_new as select col1,col2 from tab_old definition only
4、刪除新表
drop table tabname?
5、增加一個列
Alter table tabname add column col type
注:列增加后將不能刪除。DB2中列加上后數據類型也不能改變,唯一能改變的是增加varchar類型的長度。
6、添加主鍵: Alter table tabname add primarykey(col)?
刪除主鍵: Alter table tabname dropprimary key(col)?
7、創建索引:create [unique] index idxname ontabname(col….)?
刪除索引:drop index idxname
索引是不可更改的,想更改必須刪除重新建。
8、創建視圖:create view viewname as selectstatement?
刪除視圖:drop view viewname
?
幾個簡單的基本的sql語句:
選擇:select * from table1 where 范圍
插入:insert into table1(field1,field2) values(value1,value2)
刪除:delete from table1 where 范圍
更新:update table1 set field1=value1where 范圍
查找:select * from table1 where field1 like ’%value1%’?
排序:select * from table1 orderby field1,field2 [desc]
總數count、求和sum、平均avg、最大max、最小min。
?
1、說明:使用外連接?
A、left (outer) join:?
左外連接(左連接):結果集既包括連接表的匹配行,也包括左連接表的所有行。?
SQL: select a.a, a.b, a.c, b.c, b.d, b.f from a LEFTOUT JOIN b ON a.a = b.c
B:right (outer) join:?
右外連接(右連接):結果集既包括連接表的匹配連接行,也包括右連接表的所有行。?
C:full/cross (outer) join:?
全外連接:不僅包括符號連接表的匹配行,還包括兩個連接表中的所有記錄。
2、分組:Group by:
一張表,一旦分組 完成后,查詢后只能得到組相關的信息。
組相關的信息:(統計信息) count,sum,max,min,avg分組的標準。
在SQLServer中分組時:不能以text,ntext,image類型的字段作為分組依據。
在selecte統計函數中的字段,不能和普通的字段放在一起。
3、對數據庫進行操作:
分離數據庫: sp_detach_db;附加數據庫:sp_attach_db 后接表名,附加需要完整的路徑名。
4、關于排序order
a.對于排序order,有兩種方法:asc升序、desc降序。
b.對于排序order,可以按照查詢條件中的某項排列,而且這項可用數字表示。
?
總結
以上是生活随笔為你收集整理的数据库入门经典基础总结的全部內容,希望文章能夠幫你解決所遇到的問題。