一、插入數據前必須使用USE選擇操作的數據庫嗎
插入數據前必須使用USE選擇操作的數據庫,原因在于 SQL Server 或 MySQL 等數據庫管理系統中可以存在多個數據庫,而每個數據庫中都可能包含有相同名稱的表格。因此,如果沒有指定要操作的數據庫,就無法確定具體是哪一個數據庫中的表格需要執行插入操作。一般情況下,在操作數據庫之前,需要使用 USE 命令來指定要使用的數據庫,才能執行后續的 SQL 命令。
二、數據庫的特征
1、數據結構化
數據庫采用數據結構化的方式,將數據以表格形式組織起來,相互獨立的文件的記錄內部是有結構的,這是數據庫系統與文件系統的根本區別。傳統文件的最簡單形式是等長同格式的記錄集合。
2、數據的共享性高,冗余度低,易擴充
數據庫系統從整體角度描述數據,數據不再面向某個應用而是面向整個系統,因此數據可以被多個用戶、多個應用共享使用,數據共享可以大大減少數據冗余,節約存儲空間。數據共享還能夠避免數據之間的不相容性與不一致性。數據面向整個系統,是有結構的數據,不僅可以被多個應用共享使用,而且容易增加新的應用,這就使得數據庫系統彈性大,易于擴充,可以適應各種用戶要求。
3、數據的獨立性高
數據獨立性包括數據的物理獨立性和數據的邏輯獨立性。物理獨立性是指用戶的應用程序與存儲在磁盤上的數據庫中的數據是相互獨立的,也就是說,數據在磁盤上的數據庫中的存儲是由DBMS管理的,用戶程序不需要了解,應用程序要處理的只是數據的邏輯結構。邏輯獨立性是指用戶的應用程序與數據庫的邏輯結構是相互獨立的,也就是說,數據的邏輯結構改變了,用戶程序也可以不變。數據與程序的獨立,把數據的定義從程序中分離出去,加上數據的存取又由DBMS負責,從而簡化了應用程序的編制,大大減少了應用程序的維護和修改。
4、數據由DBMS統一管理和控制
數據庫系統采用集中式的方式對數據庫進行管理,由DBMS統一進行建庫、操作和控制,使數據的安全性、完整性、并發控制和數據庫恢復得到保證。為此,DBMS還必須提供以下幾方面的數據控制功能:
數據的安全性(Security)保護:數據的安全性是指保護數據以防止不合法的使用造成數據的泄密和破壞。使每個用戶只能按規定,對某些數據以某些方式進行使用和處理。數據的完整性(Integrity)檢查:數據的完整性指數據的正確性、有效性和相容性。完整性檢查將數據控制在有效的范圍內,或保證數據之間滿足一定的關系。并發(Concurrency)控制:當多個用戶的并發進程同時存取、修改數據庫時,可能會發生相互干擾而得到錯誤的結果,或使得數據庫的完整性遭到破壞,因此必須對多用戶的并發操作加以控制和協調。數據庫恢復(Recovery):計算機系統的硬件故障、軟件故障、操作員的失誤,以及故意的破壞會影響數據庫中數據的正確性,甚至造成數據庫部分或全部數據的丟失。DBMS必須具有將數據庫從錯誤狀態恢復到某一已知的正確狀態(亦稱為完整狀態或一致狀態)的功能,這就是數據庫的恢復功能。數據庫可以供各種用戶共享,具有最小冗余度和較高的數據獨立性,DBMS在數據庫建立、運用和維護時對數據庫進行統一控制,以保證數據的完整性、安全性,并在多用戶同時使用數據庫時進行并發控制,在發生故障后對系統進行恢復。
延伸閱讀1:SQL數據庫的數據體系結構
SQL數據庫的數據體系結構基本上是三級結構,但使用術語與傳統關系模型術語不同。在SQL中,關系模式(模式)稱為“基本表”(base table);存儲模式(內模式)稱為“存儲文件”(stored file);子模式(外模式)稱為“視圖”(view);元組稱為“行”(row);屬性稱為“列”(column)。