什么是數據庫?
數據庫是以電子方式從系統中存儲和檢索的大量數據集合。 存儲在數據庫中的結構化數據被處理、操縱、控制和更新以執行各種操作。 行業中使用的一些流行數據庫是 Oracle、MySQL、PostgreSQL、MS SQL Server 和 SQLite。
什么是SQL?
SQL 是一種標准的編程語言,用於操作關系數據庫並執行各種操作,例如從關系數據庫中插入、操作、更新和檢索數據。
為什么需要 SQL?
以下任務需要 SQL
- 創建新的數據庫、表和視圖
- 在數據庫中插入記錄
- 更新數據庫中的記錄
- 從數據庫中刪除記錄
- 從數據庫中檢索數據
SQL的應用
- SQL用於創建數據庫,定義其結構,實現它,並在數據庫上執行各種功能。
- SQL 還用於訪問、維護和操作已創建的數據庫。
- SQL 是一種構建良好的語言,用於在數據庫中輸入數據、修改數據和提取數據。
- SQL 被大量用作客戶端/服務器語言來連接前端和后端,從而支持客戶端/服務器架構。
- SQL 部署為數據控制語言 (DCL) 時,有助於保護您的數據庫免受未經授權的訪問。
SQL的特點
- SQL 用於訪問關系數據庫中的數據。
- SQL 在非常有效地提取大量數據方面非常快。
- SQL 非常靈活,因為它可以與來自 Oracle、IBM、Microsoft 等的多個數據庫系統配合使用。
- SQL 可幫助您管理數據庫,而無需了解大量編碼。
SQL 中的基本查詢
在本節中,我們將在 MySQL Workbench 上運行一些常用的命令。
SHOW Statment
列出了 MySQL Workbench 服務器主機上存在的數據庫。
語法
show databases;
use Statment
USE 語句選擇一個數據庫並在該數據庫上執行 SQL 操作。該數據庫保持默認狀態,直到會話結束或與某個其他數據庫執行另一個 USE 語句。
語法
USE database_name;
CREATE TABLE Statement
CREATE TABLE 語句在 SQL 中用於創建新表。
語法
CREATE TABLE table_name ( column1 datatype, column2 datatype, column3 datatype, .... );
以下 SQL 查詢將創建一個具有以下屬性的客戶表:客戶 ID、客戶姓名、年齡、性別、購買日期、地址、項目和價格。
CREATE TABLE customers ( Cust_Id INT PRIMARY KEY, Cust_Name VARCHAR(25), Age INT, Gender CHAR(1), Dop DATE, Address VARCHAR(20), Item VARCHAR(15), Price FLOAT );
INSERT INTO Statement
INSERT INTO 語句主要用於在表中添加新數據。
語法
INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...);
以下 SQL 查詢將數據插入到客戶表中的記錄中。
insert into customers values (101, "Joseph", 22, "M", "2016-11-23", "Pune", "Vegetable", 80), (102, "Nilesh", 21, "M", "2016-11-23", "New York", "softdrink", 800), (103, "Vipul", 33, "M", "2016-11-23", "Miami", "candies", 620), (104, "Anubhav", 61, "M", "2016-11-23", "Pune", "fruits", 250), (105, "Utkarsh", 45, "M", "2016-11-23", "New York", "snacks", 380), (106, "Ishan", 44, "M", "2016-11-23", "Miami", "potato", 60), (107, "Ankit", 52, "M", "2016-11-23", "Chicago", "ice cream", 220), (108, "Akshay", 36, "M", "2016-11-23", "Pune", "coffee", 80), (109, "Akash", 28, "M", "2016-11-23", "New York", "Vegetable", 150), (110, "Tanishq", 19, "M", "2016-11-23", "Miami", "noodles", 400), (111, "Raghav", 24, "M", "2016-11-23", "Detroit", "cups", 3400), (112, "Anand", 54, "M", "2016-11-23", "Pune", "watermelon", 680), (113, "Amrit", 43, "M", "2016-11-23", "Miami", "facewash", 340), (114, "Andrew", 18, "M", "2016-11-23", "Boston", "shampoo", 950), (115, "Ricky", 26, "M", "2016-11-23", "Detroit", "vanilla", 290), (116, "Cummins", 30, "M", "2016-11-23", "Chicago", "mango", 640), (117, "Rabada", 40, "M", "2016-11-23", "Boston", "banana", 80), (118, "Johnson", 55, "M", "2016-11-23", "New York", "batteries", 420), (119, "Adam", 45, "M", "2016-11-23", "Boston", "router", 160), (120, "Illeana", 25, "F", "2016-11-23", "Chicago", "brinjal", 550);
SELECT Statement
最常用的 SQL 命令是 SELECT 語句。 SQL SELECT 語句用於從數據庫的表中選擇行和列。
語法
SELECT column1, column2, ...
以下 SQL 查詢將返回客戶表的所有記錄。
Select * from customers;
以下 SQL 查詢將返回 customer 表中所有記錄的列 customer id 和 customer name。
select Cust_id,Cust_Name from customers;
DROP TABLE Statement
DROP 語句主要用於刪除特定表。 刪除表將刪除其中的所有對象(表、視圖、過程等)。 用戶應該具有刪除表的管理員權限。
語法
DROP TABLE table_name;
以下 SQL 查詢將從數據庫中刪除或刪除客戶表。
Drop table customers;
TRUNCATE TABLE Statement
TRUNCATE TABLE 命令刪除表內的數據,但不刪除表本身。
語法
TRUNCATE TABLE Categories;
UPDATE Statement
UPDATE 語句主要用於更新表中的現有記錄。
語法
UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;
以下 SQL 查詢會將客戶 id = 101 的記錄中的客戶名稱更新為 James,並將城市名稱更新為 Boston。
update customers set Cust_Name = "James", Address= "Boston" where Cust_Id = 101;
總結
SQL 被開發用於訪問關系數據庫中的數據。 自從公司意識到需要處理數據以來,SQL 開發人員的需求就很大。 在本教程中,我們已經介紹了 SQL 的基礎知識。
要學習更詳細的 SQL ,請查看 SQL教程。