基本 SQL 表操作

基本 SQL 表操作

在本教程中,我將向您展示如何執行基本 SQL 表操作,包括創建和刪除表。我們還將討論在表中插入、刪除和更新記錄。

此外,我們還使用術語CRUD來表示SQL的基本表操作,即創建、讀取、更新和刪除。

如果您曾經使用過 Excel,只需將 Excel 文件想像成您的數據庫,將您在SQL中創建的表格想像成Excel 頁面,將記錄想像成 Excel 工作表中的行。

目錄

SQL 表操作:創建表

讓我們從CREATE TABLE命令開始。要創建表,首先,我們需要鍵入CREATE TABLE命令。然後輸入表名。請注意,您要使用的表名不應出現在數據庫中,否則將不會創建。 

基本 SQL 表操作

之後,我們需要添加左括號右括號。然後,我們將在括號之間添加列名數據類型。

基本 SQL 表操作

我們還可以根據查詢創建表。我們可以使用命令SELECT * INTO person.Persons_copy FROM person.Persons來做到這一點。此命令將創建一個名為person.Persons_copy的表,該表具有與person.Persons表相同的結構和記錄。

基本 SQL 表操作

在 SQL 中操作記錄

創建表後,我們現在可以使用INSERT命令輸入記錄。下面突出顯示的命令會將值輸入到名為dbo.courses的表中。

基本 SQL 表操作

如果您輸入了錯誤的條目並且想要將其刪除,您可以使用DELETE命令來執行此操作。使用下面的命令,刪除dbo.courses表中id大於等於1000的記錄。

基本 SQL 表操作

在此操作中使用WHERE命令很重要,因為它可以幫助您指定應刪除的記錄,否則此命令將從您指定的表中刪除所有內容。

如果要刪除表中的所有內容,可以使用TRUNCATE TABLE命令。下面突出顯示的命令將清除表dbo.courses中的記錄。

基本 SQL 表操作

更新記錄非常簡單。我們使用UPDATE命令來執行此操作。下面突出顯示的命令會將dbo.courses表中的名稱“ Dax ”更新 為“ DAX ” 。

基本 SQL 表操作

正如您所注意到的,我們在示例中使用了SET命令來確定應更新哪個列和值。我們還添加了WHERE命令以指出我們將在dbo.courses表中更新的現有記錄。

SQL 表操作:DROP TABLE

我們也可以簡單地使用DROP TABLE命令刪除表。此示例中突出顯示的命令顯示瞭如何刪除指定的表。

基本 SQL 表操作

此功能類似於TRUNCATE TABLE命令。但是,這兩者之間的主要區別在於TRUNCATE TABLE命令僅用於清除表。另一方面,DROP TABLE命令用於刪除特定表及其記錄。

現在讓我們嘗試在Microsoft SQL Server Management Studio中使用這些SQL命令。

在 SQL 中創建表

讓我們從創建一個表開始。例如,我們要創建一個名為dbo.Names的表。

基本 SQL 表操作

現在我在AdventureWorks2012 數據庫中工作。這是 Microsoft 在其文檔網站上提供的備份數據庫。 

基本 SQL 表操作

在右側,當我們單擊Tables文件夾旁邊的+圖標時,我們可以看到Tables文件夾中沒有表名為dbo.Names的現有表。 

基本 SQL 表操作

現在讓我們運行下面的命令來創建dbo.Names表。

基本 SQL 表操作

單擊“執行”按鈕後,它會顯示一條消息“命令已成功完成”。

基本 SQL 表操作

接下來,刷新Tables文件夾。 右鍵單擊它,然後選擇Refresh

基本 SQL 表操作

刷新後,我們可以看到在Tables文件夾下添加了dbo.Names表。

基本 SQL 表操作

dbo.Names表當前為空。右鍵單擊它並從選項中選擇“選擇前 1000 行”以將其打開。

基本 SQL 表操作

打開後,我們會看到它沒有任何記錄,只顯示 3 列,分別是IDFirstNameLastName。 

基本 SQL 表操作

在 SQL 中創建臨時表

臨時表總是以#開頭。這對於查找和解決潛在錯誤以及編寫SQL查詢 非常有用,因為它不會永久存儲在數據庫中。當我們關閉會話時,表將被刪除。您可以使用下面突出顯示的命令創建臨時表。

基本 SQL 表操作

從這裡我們將使用#Names表來運行其他命令。

在 SQL 中選擇表

創建#Names表後,我們現在要通過運行以下突出顯示的命令來檢查其記錄。

基本 SQL 表操作

但由於我們還沒有輸入任何記錄,該表將只顯示 3 列。

基本 SQL 表操作

在 SQL 中刪除表

現在,如果我們想要刪除或刪除#Names表,我們將使用DROP TABLE命令並選擇#Names表。

基本 SQL 表操作

之後,運行SELECT * FROM #Names命令,它會顯示如下消息。

基本 SQL 表操作

這是因為我們刪除了#Names表。

在 SQL 表中插入記錄

在繼續之前,我們將重新創建#Names表,然後使用以下命令將記錄插入該表。

基本 SQL 表操作

此命令意味著我們將列(ID, FirstName, LastName)中的值(1, 'Dean', 'Jones')插入到#Names中。

運行這條命令後,當你看到類似下例的信息時,說明這條記錄已經添加到表中了。

基本 SQL 表操作

現在運行命令SELECT * FROM #Names,您應該會看到我們剛剛插入的記錄。

基本 SQL 表操作

在表中插入多條記錄

要在表中插入多條記錄,只需創建多個值即可。但一定要用“ , ”隔開。使用以下命令作為參考。

基本 SQL 表操作

如果我們再次運行命令SELECT * FROM #Names ,我們現在在#Names表中總共有 4 條記錄。

基本 SQL 表操作

更新表中的記錄

接下來,讓我們更新#Names表中的一條記錄。讓我們嘗試將 John 的ID更改為10。首先,我們將使用UPDATE命令,然後選擇#Names。之後,我們將添加以下命令:SET ID = 10WHERE FirstName = 'John'以使用他的名字選擇John並將其ID設置為10

基本 SQL 表操作

上面的命令會將 John 的ID更新為10。 

現在再次運行命令SELECT * FROM #Names以檢查記錄是否已成功更新。 

基本 SQL 表操作

結果,John 的ID已更新為10

刪除表中的記錄

這次我們將刪除#Names表中的一條記錄。例如,我們要刪除ID值為3的記錄。

基本 SQL 表操作

讓我們使用命令DELETE FROM #Names然後使用WHERE ID = 3來執行此操作。

基本 SQL 表操作

刪除後,再次運行命令SELECT * FROM #Names ,我們會注意到我們在#Names表中只剩下 3 條記錄。

在 SQL 中清空表

接下來,我們將清除#Names表的內容。我們將在此操作中 使用命令TRUNCATE TABLE #Names 。

基本 SQL 表操作

一旦我們執行了TRUNCATE TABLE命令,使用命令SELECT * FROM #Names它會顯示#Names表現在是空的。

基本 SQL 表操作

複製表格

最後,我們將學習如何復製表格。為此,我們需要確定要復制哪個表。例如,我們要復制Person.Person表。在此示例中,我們將使用命令SELECT * INTO Person.Person_copy FROM Person.Person來複製Person.Person表及其記錄。

基本 SQL 表操作

接下來,我們將製作只有 1 條記錄的Person.Person表的副本。例如,我們只想複製BusinessEntityID值為1的記錄。

基本 SQL 表操作

為此,我們必須在FROM Person.Person命令旁邊添加WHERE命令。然後鍵入列名稱BusinessEntityID並將值設置為1

基本 SQL 表操作

運行該命令後,它會顯示一條消息,表明我們已成功創建Person.Person表的副本。表的名稱是Person.Person_copy ,其中包含來自Person.Person表的BusinessEntityID值為1的記錄。

讓我們使用以下命令選擇Person.Person_copy表。

基本 SQL 表操作

使用這些步驟,我們能夠從Person.Person表創建相同數量的列並創建Person.Person_copy表。 

結論

總而言之,我們能夠將基本的 SQL 表操作用於各種目的。我們學習瞭如何創建表格;插入、更新和刪除表中的記錄;並創建一個表的副本。

除此之外,我們還討論瞭如何創建一個臨時表,我們可以使用它來測試命令並查找或修復潛在的錯誤。請記住,我們在臨時表中所做的所有操作也可以在物理表中完成。請記住,一旦我們關閉會話,臨時表將不再存在。

如果您想了解有關此主題和其他相關內容的更多信息,您當然可以查看下面的相關鏈接列表。

一切順利,

哈菲茲


什麼是 Python 中的自我:真實世界的例子

什麼是 Python 中的自我:真實世界的例子

什麼是 Python 中的自我:真實世界的例子

如何在 R 中保存和加載 RDS 文件

如何在 R 中保存和加載 RDS 文件

您將學習如何在 R 中保存和加載 .rds 文件中的對象。本博客還將介紹如何將對像從 R 導入 LuckyTemplates。

回顧前 N 個工作日——DAX 編碼語言解決方案

回顧前 N 個工作日——DAX 編碼語言解決方案

在此 DAX 編碼語言教程中,了解如何使用 GENERATE 函數以及如何動態更改度量標題。

在 LuckyTemplates 中使用多線程動態視覺技術展示見解

在 LuckyTemplates 中使用多線程動態視覺技術展示見解

本教程將介紹如何使用多線程動態可視化技術從報告中的動態數據可視化中創建見解。

LuckyTemplates 篩選上下文簡介

LuckyTemplates 篩選上下文簡介

在本文中,我將貫穿過濾器上下文。篩選上下文是任何 LuckyTemplates 用戶最初應該了解的主要主題之一。

使用 LuckyTemplates 在線服務中的應用程序的最佳技巧

使用 LuckyTemplates 在線服務中的應用程序的最佳技巧

我想展示 LuckyTemplates Apps 在線服務如何幫助管理從各種來源生成的不同報告和見解。

隨著時間的推移分析利潤率變化——使用 LuckyTemplates 和 DAX 進行分析

隨著時間的推移分析利潤率變化——使用 LuckyTemplates 和 DAX 進行分析

了解如何在 LuckyTemplates 中使用度量分支和組合 DAX 公式等技術計算利潤率變化。

DAX Studio 中數據緩存的物化想法

DAX Studio 中數據緩存的物化想法

本教程將討論數據緩存物化的想法,以及它們如何影響 DAX 在提供結果時的性能。

使用 LuckyTemplates 進行業務報告

使用 LuckyTemplates 進行業務報告

如果直到現在你還在使用 Excel,那麼現在是開始使用 LuckyTemplates 來滿足你的業務報告需求的最佳時機。

什麼是 LuckyTemplates 網關?所有你必須知道的

什麼是 LuckyTemplates 網關?所有你必須知道的

什麼是 LuckyTemplates 網關?所有你必須知道的