• SQL Server DML(UPDATE、INSERT、DELETE)常见用法(一)


      

    1.引言

    T-SQL(Transact Structured Query Language)是标准的SQL的扩展,是程序和SQL Server沟通的主要语言。

    T-SQL语言主要由以下几部分组成:

    • 数据定义语言(DDL):用来建立数据库、数据库对象等,如CREATE TABLE、DROP TABLE等。
    • 数据控制语言(DCL):控制数据库的存取许可、权限等,如GRANT等。
    • 数据操纵语言(DML):用于插入、修改、删除和查询数据库中数据,如SELECT、INSERT、UPDATE、DELETE等。

      数据定义语言和数据控制语言实现的操作通常通过Micosoft SQL Server Management Studio可视化操作。程序中使用最多的是数据操纵语言,这里主要介绍数据操纵语言中SELECT、INSERT、UPDATE、DELETE的最常见,最基本的用法。

    2. 常用概念

      在介绍数据操纵语言之前,先来了解一些SQL Server中常用的规范和格式,以及在T-SQL语句中可能用到的概念。

    2.1标识符

         服务器、数据库和数据库对象(如表、视图、列、索引、约束等)都有标识符,数据库对象的名称被看作为该对象的标识符。

    • 标识符格式
    1. 首字母必须以字母(UNICODE 2.0中定义)、下划线_、符号@、或者数字符号#开头,后续可是字母、数字、_、@、$、#。
    2. 以@开头的标识符表示局部变量或参数,以#开头表示临时表或变量,以##开头表示全局临时对象,某些Transact SQL 函数以@@开头。
    • 标识符分类
    1. 常规标识符:符合标识符格式规格,如age123,_we
    2. 分隔标识符:包含在“”或者[]内的标识符,标识符中间可以有空格,如[hong kong]

    2.2对象命名规则

      完整的对象名由服务器名、数据库名、schema、和对象名组成,其间使用.号连接;可以省略中间一部分用.表示

      Server.database.schema.object

      Server..schema.object

      schema.object

      Object

    2.3常量、变量、运算符和通配符

    • 常量
    1. 数值常量包含整数常量、小数常量和浮点数常量,如12,12.56,12.5e7
    2. 字符串常量,在单引号内,包含字母数字以及特殊字符,如!、@、#;如果包含嵌入的引号,可以使用两个单引号表示嵌入的单引号。如’student’。
    3. 日期和时间,日期、时间和时间间隔的常量值被指定为日期和时间常量。例如'1989-09-34','04/04/1998',时间和日期根据国家不同书写方式也不同。
    4. 符号常量,特殊的常量符号代表不同的常量数据值,CURRENT_DATE等。
    • 变量
    1. 局部变量以@开头。
    2. 全局变量以@@开头,内部定义了很多全局变量,如@@CONNECTIONS表示,服务器启动后的连接次数。
    • 运算符和通配符
    1. 运算符包含算数运算符+、-、*、/、%;赋值运算符=;比较运算符>、<、=、>=、<=、<>;逻辑运算符ALL、AND、ANY、BETWEEN、EXISTS、IN、LIKE、NOT、OR、SOME;位运算符&、|、^、~;连接运算符+。
    2. 通配符,%:包含零个或更多字符;_:任何单个字符;[]:指定范围或集合中任意单个字符;[^]:不属于指定范围或集合中的单个字符。

    3.DML数据操作语言

      DML数据操作语言,包含SELECT、INSERT、UPDATE、DELETE这四种T-SQL语句,下面通过例子,具体介绍这四个语句的基本使用。

    假设现有如下的一张表格,表名称为Student:

      

    3.1 SELECT语句

      SELECT语句用来查询数据表格或视图,是使用最多的一条语句,由于其语法复杂,子句较多,在后面有专门的一章来说明它的用法。

    3.2 INSERT语句

      INSERT语句向表中添加新纪录,该语句可以向表中插入一条新纪录或者插入一个结果集。语法如下(以下所有语法的格式如下,大写表示关键字,[]表示可选内容,[,…]表示可重复前项):

        INSERT [INTO] table_or_view_name (column_name[,…]) VALUES (expression)[,…]

      向表中插入数据:

         

      结果如下:

        

    3.3 UPDATE语句

      修改数据库中数据。语法如下:

        UPDATE table_or_view_name [FROM {<table_source>}[,…]]

        SET column_name = expression | DEFAULT | NULL [,…]

        WHERE search_condition

          修改表格中姓名为王莉的年龄为19:

         

          结果如下:

        

    3.4 DELETE语句

      删除表格中记录,语法如下:

        DELETE [FROM <table_source>[,…]]

        WHERE search_condition

          删除表格中姓名为王莉的记录:

         

          结果如下:

         

    4 结论

         数据操纵语言个数不多,结构简单,但是使用频繁,其中的SELECT语句使用最多,也最复杂,详细介绍请看后一章,SQL Server SELECT查询语句基本用法。

  • 相关阅读:
    oracle中视图v$sql的用途
    maven 安装jar包命令
    Maven常见异常及解决方法
    对oracle实例的内存(SGA和PGA)进行调整,优化数据库性
    oracle中lock和latch的用途
    oracle中awr性能报告阅读笔记
    oracle 查看并行sql语句的并行数量和如何开并行
    DBMS_STATS.GATHER_TABLE_STATS详解
    关于加快INSERT语句执行速度和HINT /*+ append */及/*+ append nologging */的使用
    oracle查看表占用磁盘空间
  • 原文地址:https://www.cnblogs.com/yongyu/p/4573060.html
Copyright © 2020-2023  润新知