本主题提供有关不同版本的 SQL Server 2012 所支持的功能的详细信息。 Microsoft SQL Server 2012 官方简体中文版下载 SQL Server Evaluation 版具有 180 天的试用期。 有关详细信息,请参阅 SQL Server 试用软件网站。 有关 SQL Server Evaluation 版和 SQL Server Developer 版支持的功能,请参阅 SQL Server Enterprise 功能集。 若要导航到 SQL Server 技术的对应表,请单击其链接: 转换箱规模限制 高可用性 (AlwaysOn) 可伸缩...
1 注释符注释是指程序代码中不执行的文本字符串,是对程序的说明,可以提高程序的可读性,使程序代码更易于维护,一般嵌入在程序中并以特殊的标记显示出来。在Transact-SQL中,注释可以包含在批处理、存储过程、触发器中,有两种类型的注释符: --:这是ANSI标准的两个连字符组成的注释符,用于单行注释。 /*…*/:这是与C语言相同的程序注释符,/*用于注释文字的开头,*/用于注释文字的结尾,可以在程序中标识多行文字为注释语句...
所有人都知道select top 的用法,但很多人还不知道update top 和 delete top 怎么用。以往的做法是set rowcount来指定,其实SQL2005中对于Top语句的增强除了参数化之外还包括对update和delete的支持,但可惜的是还不支持自定义的order by列。如果要自定义派序列可以借助CTE.对于CTE的任何更改都会影响到原始表。我们看下面的测试代码。 代码如下:set nocount on use tempdb go if (object_id (tb ) is not null ) drop table tb...
最近经常使用字符串查找功能。 包括 1、全匹配查找字符串 2、模糊查找字符串 CHARINDEX 和 PATINDEX 函数都返回指定模式的开始位置。PATINDEX 可使用通配符,而 CHARINDEX 不可以。 这两个函数都带有2个参数: 1 希望获取其位置的模式。使用 PATINDEX,模式是可以包含通配符的字面字符串。使用 CHARINDEX,模式是字面字符串(不能包含通配符)。 2 字符串值表达式(通常为列名)。 例如,查找模式"wonderful"在 ti...
语法: ROW_NUMBER() OVER([ <partition_by_clause>] <order_by_clause>) 备注: ORDER BY子句可确定在特定分区中为行分配唯一ROW_NUMBER的顺序。 参数: <partition_by_clause> 将FROM子句生成的结果集划入应用了ROW_NUMBER函数的分区。 <order_by_clause> 确定将ROW_NUMBER值分配给分区中的行的顺序。有关详细信息,请参阅ORDER BY子句(Transact-SQL)。 返回类型: bigint 类似于MySQL的LIMIT功能语法实例: 代码如下: SELECT *...
无论使用int还是varchar,对于Status的多选查询都是不易应对的。举例,常规思维下对CustomerStatus的Enum设置如下: 代码如下: [Serializable] public enum CustomerStatus { New = 0, Active = 1, Overdue = 2, Suspended = 3, Closing = 4, Closed = 5 } 在数据库中以int形式存储了Status值。 如果我在页面中想一次搜索状态为Active,Overdue和Suspended状态的Customer,该怎么办?程序是不是得把这三个状态值 拼成字符串传递给...
在域环境下我没配置成果,也许是域用户的原因,因为我在生产环境下搞的,更改域用户需要重启SQLServer ,所以这个方法放弃了,只能用证书形式。 环境: 主机:192.168.10.2 (代号A) 镜像:192.168.10.1 (代号B,为了一会说明方便) (条件有限我没有搞见证服务器。)两台服务器上的都是SQLServer2005 首先配置主机 主机上执行以下SQL 代码如下: --创建主机数据库主密钥 USE master; CREATE MASTER KEY ENCRYPTION BY PASSWORD = passw...
SQL Server的复制分为三种,下面介绍一下这三种复制技术及其存在的一些缺陷,大家在使用时可以根据具体的情境选择适用的复制方法,避开这些缺陷的干扰。 1. 快照复制 A每隔一段时间将B中的相应表中的数据全部删除,然后将自己相应表中的全部插到B中。此种方式显然不适合我们的应用,不予考虑。 2. 事务复制 对A中的每一个满足复制条件的事务,每隔一定时间A都应用到B上,反之亦然。SQL Server 通过把数据传给三个存储过程(插入,删...
第一次看到这样的SQL语句,看不懂,其中用到了下面的不常用的 聚集函数:GROUPING 用于汇总数据用的运算符: ROLLUP SELECT CASE GROUPING(o.customerid) WHEN 0 THEN o.customerid ELSE (Total) END AS AllCustomersSummary, CASE GROUPING(od.orderid) WHEN 0 THEN od.orderid ELSE -1 END AS IndividualCustomerSummary, SUM(od.quantity*od.unitprice) AS price FROM Orders o, [Order Details] od WHERE Year(o.orderdate) = 1...
一、 简单查询 简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的 表或视图、以及搜索条件等。例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段。 SELECT nickname,email FROM testtable WHERE name='张三' (一) 选择列表 选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变量和全局变量)等构成。 1、选择所有列 例如,...
但我觉得这个功能用来设置备份服务器或测试服务器也很有用, 在一台机上发布服务,可以在其它机子的SQL里订阅,根据你的发布的条件不同,可以做成定时同步、实时同步、相互同步等不同的发布及订阅。 要SQL Server支持复制功能,你必须运行SQL Server Agent这个服务,不然生成不了快照。 在上图设置发布服务器及分发服务器。 这里就是上面有提到的一定要开启的SQL Server Agent代理服务器,不然订阅不到。 这个是选择发布类型...
根据网络情况,可能达到10秒左右的延时,即主数据库添加,删除,更新的内容,一般在10秒内就可以同步到备用数据库上。 三分钟的视频操作演示在最下面,不要忘记看了。 1、配置分布发服务器2、新建发布3、这里介绍事务发布4、选择要发布的表,注意:只有带主键的表才可以发布5、这是个问题,因为很多表中,我们会有这个自动编号的功能,不过你可以自己修改存储过程来实现这个功能。 加上用到 SET IDENTITY_INSERT xxxtable ON的功能...
上个月,有个朋友问我说Sql Sever向Mysql迁移有什么好的经验分享,他们公司客户明确提出不再提供Windows服务器,现在计划Mysql迁移。我说Mysql迁移成本太高了,不妨可以了解一下SQL Server On Linux再做决定。于是,我把之前给运维分享的Word文档发给了他,告诉他,如果可以接受一些不支持的功能,选择成本,风险小的,如果项目中用到的技术知识刚好避开了那些不支持的功能,3~5个小时可以完成一个项目的迁移。我们公司也有案例,在...
查询数据 多表查询 SELECT查询不但可以从一张表查询数据,还可以从多张表同时查询数据。查询多张表的语法是:SELECT * FROM <表1> <表2>。 例如,同时从students表和classes表的“乘积”,即查询数据,可以这么写: SELECT * FROM students, classes;这种一次查询两个表的数据,查询的结果也是一个二维表,它是students表和classes表的“乘积”,即students表的每一行与classes表的每一行都两两拼在一起返回。结果集的列数是studen...
我们在生产中使用SQL-Server 2014运行生产.它具有复制运行和多个数据中心的部分订户.我有一个要求在Linux上评估SQL Server 2017的请求,因此它可以用于在Linux上运行的新应用程序.问题是它应该也是订阅者,并且似乎Microsoft尚未在开发中进行复制. 有人已经以任何方式处理了这个复制问题吗? Linux上的SQL Server是否支持复制? 我开了一个connect,也许你们中的一些人会投票支持它. 提前致谢解决方法:目前,Linux上不支持复制.但是,根...