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标识符
服务器、数据库和数据库对象(如表、视图、列、索引、约束等)都有标识符,数据库对象的名称被看作为该对象的标识符。
- l 标识符格式
- 首字母必须以字母(UNICODE 2.0中定义)、下划线_、符号@、或者数字符号#开头,后续可是字母、数字、_、@、$、#。
- 以@开头的标识符表示局部变量或参数,以#开头表示临时表或变量,以##开头表示全局临时对象,某些Transact SQL 函数以@@开头。
- l 标识符分类
- 常规标识符:符合标识符格式规格,如age123,_we
- 分隔标识符:包含在“”或者[]内的标识符,标识符中间可以有空格,如[hong kong]
2.2对象命名规则
完整的对象名由服务器名、数据库名、schema、和对象名组成,其间使用.号连接;可以省略中间一部分用.表示
Server.database.schema.object
Server..schema.object
schema.object
Object
2.3常量、变量、运算符和通配符
- l 常量
- 数值常量包含整数常量、小数常量和浮点数常量,如12,12.56,12.5e7
- 字符串常量,在单引号内,包含字母数字以及特殊字符,如!、@、#;如果包含嵌入的引号,可以使用两个单引号表示嵌入的单引号。如’student’。
- 日期和时间,日期、时间和时间间隔的常量值被指定为日期和时间常量。例如'1989-09-34','04/04/1998',时间和日期根据国家不同书写方式也不同。
- 符号常量,特殊的常量符号代表不同的常量数据值,CURRENT_DATE等。
- l 变量
- 局部变量以@开头。
- 全局变量以@@开头,内部定义了很多全局变量,如@@CONNECTIONS表示,服务器启动后的连接次数。
- l 运算符和通配符
- 运算符包含算数运算符+、-、*、/、%;赋值运算符=;比较运算符>、<、=、>=、<=、<>;逻辑运算符ALL、AND、ANY、BETWEEN、EXISTS、IN、LIKE、NOT、OR、SOME;位运算符&、|、^、~;连接运算符+。
- 通配符,%:包含零个或更多字符;_:任何单个字符;[]:指定范围或集合中任意单个字符;[^]:不属于指定范围或集合中的单个字符。
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查询语句基本用法。
SQL Server DML(UPDATE、INSERT、DELETE)常见用法(一)的更多相关文章
- SQL Server DML(SELECT)常见用法(二)
1 引言 上篇讲到SQL Server中DML的基本使用方法,其中SELECT语句是最常用的语句,其功能强大,结构复杂,下面通过例子,具体介绍其使用方法. 2 SELECT查询语句 SELECT语 ...
- SQL Server中UPDATE和DELETE语句结合INNER/LEFT/RIGHT/FULL JOIN的用法
在SQL Server中,UPDATE和DELETE语句是可以结合INNER/LEFT/RIGHT/FULL JOIN来使用的. 我们首先在数据库中新建两张表: [T_A] CREATE TABLE ...
- SQL Server 基本UPDATE和DELETE语句
1.UPDATA 基本UPDATE语法:(可以修改多行的列) 2.DELETE
- SQL server触发器中 update insert delete 分别给写个例子被。
SQL server触发器中 update insert delete 分别给写个例子以及解释下例子的作用和意思被, 万分感谢!!!! 主要想知道下各个语句的书写规范. INSERT: 表1 (ID, ...
- SQL Server 中 with tmp 临时表的用法
SQL Server 中 with tmp 临时表的用法 ----------with临时表用法,有时候采用临时表比采用in的效率更高,避免了全表扫描. 实例中实现了查询普通题.大题.子题目的sql ...
- 【SQL Server学习笔记】Delete 语句、Output 子句、Merge语句
原文:[SQL Server学习笔记]Delete 语句.Output 子句.Merge语句 DELETE语句 --建表 select * into distribution from sys.obj ...
- 执行update, insert,delete 语句, 不返回结果集,(类型化参数)
/// <summary> /// 执行update, insert,delete 语句, 不返回结果集,(类型化参数) /// </summary> /// <para ...
- SQL SERVER 使用BULK Insert将txt文件中的数据批量插入表中(1)
1/首先建立数据表 CREATE TABLE BasicMsg( RecvTime FLOAT NOT NULL , --接收时间,不存在时间相同的数据 AA INT NOT NULL, --24位地 ...
- SQL SERVER的update select语句的写法
需求: 要根据表A的数据来更新表B的某些字段,A和B要进行条件关联. 常规做法可能写个子查询 简单写法是用SQL Server的update select语法 update T_STOCK_INFO ...
随机推荐
- Oracle基础学习5-- Oracle权限之”角色”
不论什么与权限相关的东西都少不了"角色"的概念,Java如此,.Net如此,Oracle当然也不例外. 角色事实上就是权限的集合,将多个权限打包到一个角色中,这样每一个角色有特定的 ...
- Chord算法实现具体
背景 Chord算法是DHT(Distributed Hash Table)的一种经典实现.下面从网上无节操盗了一段介绍性文字: Chord是最简单.最精确的环形P2P模型."Chord&q ...
- 让浏览器非阻塞加载javascript的几种方式
通常大多数浏览器是并行下载资源的,但由于外部脚本的特殊性例如通过脚本改变文档的DOM结构.脚本之间的存在依赖关系.使用document.write 向页面输出HTML等.浏览器为了确保正确执行脚本和呈 ...
- spring入门:beans.xml不提示、别名、创建对象的三种方式
spring的版本是2.5 一.beans.xml文件不提示 Location:spring-framework-2.5.6.SEC01\dist\resources\spring-beans-2.5 ...
- javascript模式——Decorator
Decorator 模式是一种结构型模式,他意在促进代码的复用,是塑造子类的一个方式. 这种想法是基于,新增的属性,对于对象来说不是必须的基本功能.我们为特殊的对象添加自己的方法,而不是重新创建一个类 ...
- [转]WCF:如何将net.tcp协议寄宿到IIS
本文转自:http://www.cnblogs.com/Gyoung/archive/2012/12/11/2812555.html 1 部署IIS 1.1 安装WAS IIS原本是不支持非HTTP协 ...
- roundcute 添加修改密码插件
添加修改密码插件 现打开main.inc.php 文件,搜索“$rcmail_config['plugins']”,找到: // List of active plugins (in plugins/ ...
- Core Bluetooth 概述 【官方文档翻译】
Core Bluetooth 框架在Mac和iOS平台,为配备了低功耗蓝牙无线技术的设备提供了进行通信所需要的类.例如,您的应用程序可以发现,探索,和低功耗的外围设备进行交互,如心率监视器.数字温控器 ...
- 关于box-sizing的理解
---恢复内容开始--- box-sizing 属性允许您以特定的方式定义匹配某个区域的特定元素. 例如,假如您需要并排放置两个带边框的框,可通过将 box-sizing 设置为 "bord ...
- 安装TDM-GCC
TDM-GCC是一组免费的编译器套件,有32位和64位两种版本.其中64位版既可以编译生成64位的可执行文件,又可以编译生成32位的可执行文件.从TDM-GCC的官网可以下载到相应的安装包,安装完成后 ...