SQL 基础


结构化查询语言(SQL)是一种标准化语言,允许对数据库执行操作,例如:创建数据记录,读取内容,更新内容和删除数据记录等。

本教程中将概述SQL,这是了解和学习JDBC概念的前提条件。 经过本章后,您将能够在数据库中创建,创建,读取,更新和删除(通常称为CRUD操作)数据。

有关SQL的详细了解,可以阅读我们的MySQL教程 。

1. 创建数据库

CREATE DATABASE语句用于创建新的数据库。 语法是 -

SQL> CREATE DATABASE DATABASE_NAME;

示例

以下SQL语句创建一个名为EMP的数据库 -

SQL> CREATE DATABASE EMP;

2. 删除数据库

DROP DATABASE语句用于删除存在的数据库。

注意:要创建或删除数据库,需要有数据库服务器的管理员权限。 需要特别小心的是:删除数据库将丢失数据库中存储的所有数据(无法恢复)。

3. 创建表

CREATE TABLE语句用于创建新表。 语法是 -

SQL> CREATE TABLE table_name
(
   column_name column_data_type,
   column_name column_data_type,
   column_name column_data_type
   ...
);

示例

以下SQL语句创建一个名为Employees的表,其中包含四列:

SQL> CREATE TABLE Employees
(
   id INT NOT NULL,
   age INT NOT NULL,
   first VARCHAR(255),
   last VARCHAR(255),
   PRIMARY KEY ( id )
);

4. 删除表

DROP TABLE语句用于删除存在的表。 语法是 -

SQL> DROP TABLE table_name;

示例

以下SQL语句删除名为Employees的表 -

SQL> DROP TABLE Employees;

5. INSERT数据

INSERT的语法如下所示,其中column1,column2等表示要显示在相应列中的数据值 -

SQL> INSERT INTO table_name VALUES (column1, column2, ...);

示例

以下SQL INSERT语句在先前创建的Employees表中插入一个新行 -

SQL> INSERT INTO Employees VALUES (100, 18, 'Max', 'Su');

6. 查询数据

SELECT语句用于从数据库检索数据。 SELECT的语法是 -

SQL> SELECT column_name, column_name, ...
     FROM table_name
     WHERE conditions;

WHERE子句可以使用比较运算符,例如:=!=<><=>=,以及BETWEENLIKE运算符。

示例

以下SQL语句从Employees表中选择:age,first和last列,其中id列为100 -

SQL> SELECT first, last, age
     FROM Employees
     WHERE id = 100;

以下SQL语句从Employees表中选择:age, first 和 last 列,其中first列包含Max -

SQL> SELECT first, last, age
     FROM Employees
     WHERE first LIKE '%Max%';

7. 更新数据

UPDATE语句用于更新数据。 UPDATE的语法是 -

SQL> UPDATE table_name
     SET column_name = value, column_name = value, ...
     WHERE conditions;

WHERE子句可以使用比较运算符,例如:=!=<><=>=,以及BETWEENLIKE运算符。

示例

以下SQL UPDATE语句更新id为100的雇员的age列的值为:20,

SQL> UPDATE Employees SET age=20 WHERE id=100;

8. 删除数据

DELETE语句用于从表中删除数据。 DELETE的语法是 -

SQL> DELETE FROM table_name WHERE conditions;

WHERE子句可以使用比较运算符,例如:=!=<><=>=,以及BETWEENLIKE运算符。

示例

以下SQL DELETE语句将删除ID为100的员工的记录 -

SQL> DELETE FROM Employees WHERE id=100;