SQL数据库学习——w3Cschool

xiaoxiao2021-02-28  94

简介 SQL数据库是什么SQL语句结构SQL数据类型 SQL简介 SQL 是什么在您的网站中使用 SQLRDBMSSQL语句后面的分号一些重要的SQL命令SQL SELECT语句 语法 SQL SELECT DISTINCT 语句 语法 SQL Where 子句 语法WHERE子句中的运算符 SQL AND OR 运算符 AND运算符实例OR运算符实例结合AND OR SQL ORDER BY关键字 语法实例实例DESC实例ORDER BY Several Columns SQL INSERT INTO语句 语法 SQL UPDATE语句 语法 SQL DELETE 语句 语法 SQL LIKE 操作符 语法实例 选取 City 以字母 s 开始的所有客户选取 City 以字母 s 结尾的所有客户选取 Country 不包含模式 land 的所有客户 SQL 通配符 通配符 通配符 描述 代替0个或者多个字符 _ 代替一个字符 charlist 字符列中的任意单一字符 charlist or charlist 不在字符列中的任何单一字符 SQL通配符 选取 取 City 以字母 ber 开始的所有客户选取 City 包含模式 es 的所有客户 用 SQL charlist 通配符 选取 City 以 bs 或 p 开始的所有客户选取 City 以 ab 或 c 开始的所有客户SQL 语句选取 City 不以 bs 或 p 开始的所有客户 SQL _ 通配符 选取 City 以一个任意字符开始然后是 erlin 的所有客户下面的 SQL 语句选取 City 以 L 开始然后是一个任意字符然后是 n然后是一个任意字符然后是 on 的所有客户

简介

SQL数据库是什么?

结构化查询语言(Structured Query Language)简称SQL(发音:/ˈes kjuː ˈel/ "S-Q-L"),是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。

SQL语句结构

结构化查询语言包含6个部分:

数据查询语言(DQL) 其语句,也称为“数据检索语句”,用以从表中获得数据,确定数据怎样在应用程序给出。保留字SELECT是DQL(也是所有SQL)用得最多的动词,其他DQL常用的保留字有WHERE,ORDER BY,GROUP BY和HAVING。这些DQL保留字常与其他类型的SQL语句一起使用数据操作语言(DML) 其语句包括动词INSERT,UPDATE和DELETE。它们分别用于添加,修改和删除表中的行。也称为动作查询语言。事务处理语言(TPL) 它的语句能确保被DML语句影响的表的所有行及时得以更新。TPL语句包括BEGIN TRANSACTION,COMMIT和ROLLBACK数据控制语言(DCL) 它的语句通过GRANT或REVOKE获得许可,确定单个用户和用户组对数据库对象的访问。某些RDBMS可用GRANT或REVOKE控制对表单个列的访问。数据定义语言(DDL) 其语句包括动词CREATE和DROP。在数据库中创建新表或删除表(CREAT TABLE 或 DROP TABLE);为表加入索引等。DDL包括许多与人数据库目录中获得数据有关的保留字。它也是动作查询的一部分。

指针控制语言(CCL) 它的语句,像DECLARE CURSOR,FETCH INTO和UPDATE WHERE CURRENT用于对一个或多个表单独行的操作。

SQL数据类型

字符型 VARCHAR型和CHAR型数据的这个差别是细微的,但是非常重要。他们都是用来储存字符串长度小于255的字符 。VARCHAR会将字符串后面多余的空格删去。 当建立自己的站点时,不需要为剪掉你数据中多余的空格而操心。 VARCHAR型字段的另一个突出的好处是它可以比CHAR型字段占用更少的内存和硬盘空间。当你的数据库很大时,这种内存和磁盘空间的节省会变得非常重要。

文本型 使用文本型数据,你可以存放超过二十亿个字符的字符串。当你需要存储大串的字符时,应该使用文本型数据。 注意文本型数据没有长度,而上一节中所讲的字符型数据是有长度的。//一个文本型字段中的数据通常要么为空,要么很大。 但是,无论何时,只要你能避免使用文本型字段,你就应该不使用它。文本型字段既大且慢,滥用文本型字段会使服务器速度变慢。文本型字段还会吃掉大量的磁盘空间。 一旦你向文本型字段中输入了任何数据(甚至是空值),就会有2K的空间被自动分配给该数据。除非删除该记录,否则你无法收回这部分存储空间。

数值型(整数INT、小数NUMERIC、钱数MONEY) MONEY型数据可以存储从-922,337,203,685,477.5808到922,337,203,685,477.5807的钱数。如果你需要存储比这还大的金额,你可以使用NUMERIC型数据。 SMALLMONEY型数据只能存储从-214,748.3648到214,748.3647 的钱数。同样,如果可以的话,你应该用SMALLMONEY型来代替MONEY型数据,以节省空间。逻辑型

如果你使用复选框(CHECKBOX)从网页中搜集信息,你可以把此信息存储在BIT型字段中。BIT型字段只能取两个值:0或1。 注意:在你创建好一个表之后,你不能向表中添加 BIT型字段。如果你打算在一个表中包含BIT型字段,你必须在创建表时完成。

日期型(DATETIME 和 SMALLDATETIME) 一个 DATETIME型的字段可以存储的日期范围是从1753年1月1日第一毫秒到9999年12月31日最后一毫秒。 DATETIME型数据小,而且不如DATETIME型数据精确。一个SMALLDATETIME型的字段能够存储从1900年1月1日到2079年6月6日的日期,它只能精确到秒。 (DATETIME型字段在你输入日期和时间之前并不包含实际的数据,认识这一点是重要的。)

SQL简介

SQL 是用于访问和处理数据库的标准的计算机语言。

SQL 是什么?

SQL,指结构化查询语言,全称是 Structured Query Language。SQL 让您可以访问和处理数据库。SQL 是一种 ANSI(American National Standards Institute 美国国家标准化组织)标准的计算机语言。

在您的网站中使用 SQL

要创建一个显示数据库中数据的网站,您需要: - RDBMS 数据库程序(比如 MS Access、SQL - Server、MySQL) - 使用服务器端脚本语言,比如 PHP 或 ASP - 使用 SQL 来获取您想要的数据 - 使用 HTML / CSS

RDBMS

RDBMS 指关系型数据库管理系统,全称 Relational Database Management System。 RDBMS 是 SQL 的基础,同样也是所有现代数据库系统的基础,比如 MS SQL Server、IBM DB2、Oracle、MySQL 以及 Microsoft Access。 RDBMS 中的数据存储在被称为表的数据库对象中。 表是相关的数据项的集合,它由列和行组成。


SQL语句后面的分号

某些数据库系统要求在每条SQL语句的末端使用分号。

分号是在数据库系统中分隔语句的标准方法,这样可以在对服务器的相同请求中执行一条以上的SQL语句。


一些重要的SQL命令

SELECT - 从数据库中提取数据UPDATE - 更新数据库中的数据DELETE - 从数据库中删除数据INSERT INTO - 向数据库中插入新数据CREATE DATABASE - 创建新数据库* ALTER DATABASE* - 修改数据库CRATE TABLE - 创建新表ALTER TABLR - 变更(改变)数据库表DROP TABLE - 删除表CREATE INDEX - 创建索引(搜索键)DROP INDEX - 删除索引

SQL SELECT语句

SELECT 语句用于从数据库中选取数据。 结果被存储在一个结果表中,称为结果集

语法

SELECT column_name,column_name FROM table_name;

SELECT * FROM table_name;

SQL SELECT DISTINCT 语句

SELECT DISTINCT用于返回唯一不同的值。

语法

SELECT DISTINCT column_name,column_name FROM table_name;

SQL Where 子句

WHERE 子句用于过滤记录,提取那些满足指定标准的记录。

语法

SELECT column_name,column_name FROM table_name WHERE column_name operator value;

SELECT * FROM table_name WHERE value;

ps: SQL使用单引号来环绕文本值(大部分数据库系统也接受双引号)。 如果是数值字段,不要使用引号。

SELECT * FROM Customers WHERE CustomerID=1; SELECT * FROM Customers WHERE Country='Mexico';

WHERE子句中的运算符

下面的运算符可以在WHERE子句中使用:

运算符描述=等于<>不等于(在SQL的一些版本中,也可写!=)>大于<小于>=大于等于<=小于等于BETWEEN在某个范围内LIKE搜索某种格式IN指定针对某个列的多个可能值

SQL AND $ OR 运算符

如果第一个条件和第二个条件都成立,则AND运算符显示一条记录。 如果第一个条件和第二个条件只有一个 ,则OR运算符显示一条记录。

AND运算符实例

下面的 SQL 语句从 “Customers” 表中选取国家为 “Germany” 且城市为 “Berlin” 的所有客户:

SELECT * FROM Customers WHERE Country = 'Germany' AND City = 'Berlin';

OR运算符实例

下面的 SQL 语句从 “Customers” 表中选取城市为 “Berlin” 或者 “München” 的所有客户:

SELECT * FROM Customers WHERE City = 'Berlin' OR city = 'München';

结合AND & OR

下面的 SQL 语句从 “Customers” 表中选取国家为 “Germany” 且城市为 “Berlin” 或者 “München” 的所有客户:

SELECT * FROM Customers WHERE Country = 'Germany' AND (City = 'Berlin' OR City = 'München');

SQL ORDER BY关键字

ORDER BY 关键字用于对结果集按照一个列或者多个列进行排序。 ORDER BY 关键字默认按照升序对记录进行排序。如果需要按照降序对记录进行排序,您可以使用 DESC 关键字。

语法

SELECT column_name,column_name FROM table_name ORDER BY column_name,column_name ASC|DESC

实例

从 “Customers” 表中选取所有客户,并按照 “Country” 列排序:

SELECT * FROM Customers ORDER BY Country;

实例(DESC)

SELECT * FROM Customers ORDER BY Country DESC;

实例(ORDER BY Several Columns )

SELECT * FROM Customers ORDER BY Country,CustomerName;


SQL INSERT INTO语句

用于向表中插入新纪录

语法

第一种形式无需指定要插入数据的列名,只需提供被插入的值即可:

INSERT INTO table_name VALUES (value1,value2,value3,...);

第二种形式需要指定列名及被插入的值:

INSERT INTO table_name(column1,column2,column3,...) VALUES (value1,value2,value3,...)

SQL UPDATE语句

UPDATE语句用于更新表中的记录。

语法

UPDATE table_name SET column1=value1,column2=value2,... WHERE some_column=some_value;

SQL DELETE 语句

删除表中的行。

语法

DELETE FROM table_name WHERE some_column=some_value;

SQL LIKE 操作符

用于在WHERE子句中搜索列中的指定模式。

语法

SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern;

实例

选取 City 以字母 “s” 开始的所有客户
SELECT * FROM Customers WHERE City LIKE 's%';

PS:”%” 符号用于在模式的前后定义通配符(缺省字母)。

选取 City 以字母 “s” 结尾的所有客户
SELECT * FROM Customers WHERE City LIKE '%s';

通过NOT关键字,你可以选取不匹配模式的记录。

选取 Country 不包含模式 “land” 的所有客户
SELECT * FROM Customers WHERE Country NOT LIKE '%land%';

SQL 通配符

可代替字符串中的任何其他字符。 在SQL 中,通配符与 SQL LIKE 操作符一起使用。 SQL 通配符用于搜索表中的数据

通配符

通配符描述%代替0个或者多个字符_代替一个字符[charlist]字符列中的任意单一字符[^charlist] or [!charlist]不在字符列中的任何单一字符

SQL通配符

选取 取 City 以字母 “ber” 开始的所有客户
SELECT * FROM Customers WHERE City LIKE 'ber%';
选取 City 包含模式 “es” 的所有客户
SELECT * FROM Customers WHERE City LIKE '%es%';

用 SQL [charlist] 通配符

选取 City 以 “b”、”s” 或 “p” 开始的所有客户
SELECT * FROM Customers WHERE City LIKE '[bsp]%';
选取 City 以 “a”、”b” 或 “c” 开始的所有客户
SELECT * FROM Customers WHERE City LIKE '[a-c]%';
SQL 语句选取 City 不以 “b”、”s” 或 “p” 开始的所有客户
SELECT * FROM Customers WHERE City LIKE '[!bsp]%';

SQL _ 通配符

选取 City 以一个任意字符开始,然后是 “erlin” 的所有客户
SELECT * FROM Customers WHERE City LIKE '_erlin';
下面的 SQL 语句选取 City 以 “L” 开始,然后是一个任意字符,然后是 “n”,然后是一个任意字符,然后是 “on” 的所有客户
SELECT * FROM Customers WHERE City LIKE 'L_n_on';
转载请注明原文地址: https://www.6miu.com/read-76772.html

最新回复(0)