`

sqlserver学习笔记 数据库基础语法

阅读更多
此文章来自地址在最下面:数据库基础语法

1.SQL全称是“结构化查询语言(Structured Query Language)”.

       SQL语言主要有5部分组成:

       数据定义语言(DDL) : CREATE, ALTER, DROP

       数据操纵语言(DML): INSERT, UPDATE, DELETE

       数据查询语言(DQL) : SELECT

       数据控制语言(DCL) COMMIT WORK, ROLLBACK WORK

       嵌入式SQL:用与嵌入通用的高级语言(C/C++、Java、PL/L、VB)

2.数据库定义

PS:因为微软的MSDN解释晦涩难懂,费了很大力气加上一些参考文献把语句的解释为汉语,呵呵。

   ●创建表

CREATE TABLE  <表名>(<列名> <数据类型> [列级完整性约束条件]

           <列名> <数据类型> [列级完整性约束条件]

                                             .......

                                      <表级完整性约束条件 >

                                            ).

说明:列级完整性约束条件有NULL 和UNIQUE(NOT NULL),

   表级完整性约束条件有PRIMARY KEY、UNIQUE 或 FOREIGN KEY。          

●修改表

ALTER TABLE<表名> ADD<新列名> <数据类型> [完整性约束条件]        

ALTER TABLE<表名> DROP <完整性约束名>

ALTER TABLE<表名> MODIFY <列名> <数据类型>

说明:三个语句依次为添加新列,删除约束名,修改列名、数据类型。

●删除表

DROP TABLE <表名>

●建立索引

CREATE [UNIQUE | CLUSTER] INDEX <索引名>

 ON<表名>  ( <列名> [次序], <列名> [次序],...)

说明:[1]次序:    ASC(升序)或DSC(降序),默认为ASC。

         [2]UNIQUE   表明此索引的每一个索引值只对应为一的数据记录。

   [3]CLUSTER     表明要建立的索引是聚簇索引,即索引项的顺序是与表中的记录的物理顺序一致的索引组织。

   ●删除索引

DROP INDEX<索引名>

●创建视图

CREATE VIEW  视图名 (列表名)

       AS SELECT  查询子句

       [WITH CHECK OPTION]

说明:[1]子查询可以使任意复杂的select语句,但不允许有order by子句和distinct短语。

     [2]WITH CHECK OPTION表示子查询的条件表达式。

     [3]组成视图的属性列名要么全部省略要么全部指定。

●删除视图

DROP VIEW 视图名

2.数据操作

   ●Select基本结构

  SELECT  [ALL | DISTINCT ] <目标表达式1>,<目标表达式2>,<目标表达式3>······

                  FROM <表名1| 视图名1>,<表名2| 视图名2>,<表名3| 视图名3>······

                  [WHERE <条件表达式>]

                  [GROUP BY <列名1> [HAVING <条件表达式>]]

                  [ORDER BY <列名2> [ ASC | DESC ] ······ ]

说明:[1]SELECT子句对应的是关系运算的投影运算,用来控制表或视图的列的属性.可以输出列名,表达式等.

         [2]FROM子句对应关系代数的投影运算,用来列出检索过程中的扫描关系.

         [3]WHERE子句对应是关系代数的选择谓词,用来控制行的属性.

         [4]GROUP BY用来分组查询,必须和HAVING 搭配使用,HAVING后必须跟聚集函数.

         [5]ORDER BY 用来对表进行升序或降序排列.

●插入语句

INSERT INTO 基本表名 (字段名1,字段名2,······)  

     VALUES (常量1,常量2,······)

     INSERT INTO 基本表名(列表名)

          SELECT 查询子句

说明:用于向基本表中插入一行或多行数据记录.

●删除语句

DELETE FROM 基本表名

     [WHERE 条件表达式]

说明:用于删除一行或者多行数据记录.

●更新语句

UPDATE 基本表名

SET 列名=值表达式(列名=值表达式······)

[WHERE 条件表达式]

举例:   几个简单的基本的sql语句

选择:select * from table1 where 范围

插入:insert into table1(field1,field2) values(value1,value2)

删除:delete from table1 where 范围

更新:update table1 set field1=value1 where 范围

查找:select * from table1 where field1 like ’%value1%’

排序:select * from table1 order by field1,field2 [desc]

总数:select count as totalcount from table1

求和:select sum(field1) as sumvalue from table1

平均:select avg(field1) as avgvalue from table1

最大:select max(field1) as maxvalue from table1

最小:select min(field1) as minvalue from table1

3.SQL的授权和销权(数据控制)

●授权语句

GRANT <权限> [,<权限>]······

      ON <对象类型> <对象名>

      TO <用户>   [,<权限>]······

       [WITH GRANT OPTION]

●销权语句

   REVOKE <权限> [,<权限>]······

      ON <对象类型> <对象名>

      FROM <用户>  [,<权限>]······

说明:不同的对象类型有不同的操作权限.

         <对象名>包括属性列,试图,基本表,数据库。

         <对象类型>包括table,database

         <用户>包括user1,user2....

注:  对象名为属性列,视图名有5种权限:SELECT,INSERT,UPDATE,DELETE,ALL PRIVILEGES.

          对象名为基本表有6种权限:SELECT,INSERT,UPDATE,DELETE,ALTER ,INDEX  ALL PRIVILEGES.

          对象名数据库时,由CREATETAB 建立表的权限,由DBA授予普通用户.

4.触发器

●创建触发器

CREATE TRIGGER trigger  after update on Account

REFERENCING new AS nrow

FOR EACH ROW

BEGIN

     ...

END

●删除触发器

DROP TRIGGER trigger 

5.嵌入式SQL

●区分主语言语句与SQL语句

为了区分诸语言与SQL语句,需要在所有的SQL语句前上前缀EXEC SQL

例如,PL/L和C语言的引用格式:

  EXEC SQL <SQL 语句>

●主语言工作单元与数据库工作单元通信

[1]SQL通信区

     SQL通信区向主语言传递SQL语句执行状态信息,使主语言能控制程序流程.

[2]主变量

    主变量也是共享变量,主语言通过主变量向SQL语言提供参数.

    局部变量

   declare @id char(10)

   --set @id = '10010001'

   select @id = '10010001'

   全局变量:必须以@@开头

[3].游标

    1)定义游标

     EXEC SQL DECLARE <游标名> CURSOR FOR

               <SELECT 语句>

     END_EXEC

     2)打开游标

     EXEC SQL OPEN <游标名> END_EXEC

     3)推进游标

     EXEC SQL FETCH FROM <游标名>  INTO <变量表> END_EXEC   

     4)关闭游标

     EXEC SQL CLOSE <游标名> END_EXEC

[4]动态SQL

     1)动态SQL预备语句

     EXEC SQL  PREPARE <动态SQL语句名> FROM<共享变量或字符串>

     2)动态SQL执行语句

     EXEC SQL  EXECUTE <动态SQL语句名>

  原创文章,若要转载,请注明Villion.

你可以通过这个链接引用该篇文章:http://villione.bokee.com/viewdiary.16005317.html
分享到:
评论

相关推荐

    Oracle SQLServer数据库 学习笔记

    1. **基础语法**:SQL查询语句(SELECT、INSERT、UPDATE、DELETE)、表的创建与管理。 2. **索引与优化**:如何创建和使用索引来提高查询速度,以及查询优化策略。 3. **事务处理**:理解ACID属性,掌握事务的开始、...

    java+SSH+oracle+sqlserver学习笔记

    【Java SSH Oracle SQLServer 学习笔记】 Java是一种广泛使用的面向对象的编程语言,它以其跨平台、开源和丰富的库而闻名。SSH是三个开源框架的缩写,分别是Spring、Struts和Hibernate,它们在Java Web开发中起着至...

    sql server语法笔记整理

    本笔记主要针对SQL Server的语法进行整理,旨在帮助初学者快速掌握基础概念和常用操作。 一、SQL简介 SQL(Structured Query Language)是用于管理和处理关系数据库的标准语言。在SQL Server中,你可以创建、更新、...

    SQL Server 学习笔记

    作为SQL Server的学习笔记,以下是一些核心知识点的详细解释。 1. **SQL语言基础**:SQL(Structured Query Language)是用于管理关系数据库的语言。包括数据查询、数据插入、更新和删除,以及创建和修改表、视图等...

    SqlServer初学者学习笔记

    以下是一些关于Sql Server学习的重要知识点: 1. 数据库基础:首先,你需要了解数据库的基本概念,如数据库、表、字段、记录等。Sql Server支持多种数据库模型,最常用的是关系模型,其中,表是数据的主要存储形式...

    SQL2005学习笔记

    《SQL2005学习笔记》是一份深入探讨SQL Server 2005核心概念、功能及优化策略的宝贵资料。SQL Server 2005是微软推出的一款强大的关系型数据库管理系统,它在数据存储、处理和分析方面具有广泛的应用。这份笔记旨在...

    SQL server 2005 学习笔记

    总结起来,SQL Server 2005的学习涉及了创建视图和存储过程的基本语法,以及如何管理数据库对象的访问权限,这对于初学者来说是非常重要的基础概念。通过理解和实践这些知识,你可以更好地理解和操作SQL Server...

    SQL 数据库语言学习笔记

    本篇“SQL数据库语言学习笔记”将深入探讨SQL的基本概念、语法和常用操作,帮助你掌握这个强大的工具。 一、SQL简介 SQL起源于1970年代,由IBM的研究员开发,其设计目标是为了解决日益复杂的数据查询和管理问题。...

    各种主流数据库学习笔记

    在《传智播客-sql入门.ppt》中,除了基础的SQL语法外,你可能还会接触到SQL Server特有的功能,如T-SQL扩展、备份恢复策略、安全性管理、并行处理和分析服务(SSAS)。理解这些内容对于在Windows环境中搭建和维护...

    SQL_Server_2000学习笔记

    本学习笔记将深入探讨SQL Server 2000的核心概念、功能以及如何有效地使用它来存储、管理和处理数据。 一、SQL Server 2000概述 SQL Server 2000基于客户-服务器(C/S)架构,支持多层应用程序开发。其主要组件包括...

    java基础 sqlserver 数据结构

    【SQLServer】 SQL Server是由Microsoft开发的关系型数据库管理系统,适用于企业级数据存储和管理。它支持标准的SQL语言进行数据查询、更新和管理。SQL Server提供了事务处理、备份恢复、安全性管理等功能,确保数据...

    linq to sql 语法 学习笔记

    LINQ (Language Integrated Query) 是 .NET Framework 中的一项技术,它允许程序员在.NET语言中直接编写查询,无需学习新的查询语言。本文将重点讲解 LINQ ...在实际开发中,这些知识是构建高效数据库应用的重要基础。

    ---SQL2005--读书笔记

    在SQL2005的读书笔记中,我们探讨的是微软的SQL Server 2005这一强大数据库管理系统的关键概念和技术。SQL(Structured Query Language)是用于管理关系数据库的标准语言,而SQL Server 2005作为其一个版本,提供了...

    c#,java,html,sqlsever记笔记软件

    描述中提到的"有我自己的一些SQL Server笔记,可自己写笔记"意味着这个压缩包可能包含了个人对SQL Server数据库管理系统的理解、实践经验以及一个可以用来创建和编辑笔记的平台。 首先,让我们从C#开始。C#是一种由...

    sql语法学习笔记.docx

    总的来说,这份学习笔记涵盖了SQL的基础操作,对于初学者来说是非常有价值的。理解并熟练掌握这些概念和语句,将有助于在实际工作中有效地管理和操纵数据库。在实践中,还需要注意SQL的优化,如避免全表扫描,合理...

    SQL Server 2000课件

    1. **SQL Server 2000基础**:理解SQL Server 2000的核心概念,包括关系数据库模型、数据表、索引、视图等。了解其与早期版本的区别和新特性,如改进的性能、安全性增强和管理工具。 2. **企业管理器**:这是SQL ...

    SQLServer笔记

    《SQLServer笔记》是作者在工作与学习过程中对SQL Server数据库系统进行深入探索的结晶,涵盖了从基础到高级的各种主题。这些笔记详细记录了数据库设计、数据库对象、安全模型、T-SQL编程、事务处理、视图、索引、...

    高效SQL学习笔记

    《高效SQL学习笔记》 SQL,全称Structured Query Language,即结构化查询语言,是用于管理关系数据库的标准语言。高效地掌握SQL对于任何IT从业者,尤其是数据分析师、数据库管理员和开发人员来说,都是至关重要的...

    郝斌Sql2005的笔记

    郝斌老师的笔记主要涵盖了数据库的基础概念、操作以及约束等方面的知识,旨在帮助学习者更好地理解和记忆SQL Server 2005的关键点。 首先,数据库是通过字段、记录、表和约束来存储数据的。字段是数据的基本单位,...

    mysql学习笔记-数据库概述、使用、sql编写

    在 MySQL 中,常见的关系型数据库包括 Oracle、SQL Server 和 DB2。 【数据库的创建与管理】 创建数据库可以使用 DDL(Data Definition Language)语句,例如 `CREATE DATABASE dbname;`。当数据库已存在时,尝试...

Global site tag (gtag.js) - Google Analytics