-
SQLServer使用触发器(trigger)发送电子邮件步骤详解
sql使用系统存储过程sp_send_dbmail发送电子邮件语法:sp_send_dbmail[[@profile_name=]'profile_name'][,[@recipients=]'recipients[;...n]'][,[@copy_recipients=]'copy_recipient[;...n]'][,[@blind_copy_recipients=]'blind_copy_recipient[;...n]'][,[@subject=]'subject'][,[@body=]'body'][,[@body_format=]'body_format'][,[@importance=]'importance'][,[@sensitivity=]'sensitivity'][,[@file_attachments=]'attachment[;...n]'][,[@query=]'query'][,[@execute_query_database=]'execute_query_database'][,[@attach_query_result_as_file=]atta...
数据库操作教程 2022-09-23 18:22:28 -
SqlServer2012使用IP地址登录服务器的配置图文教程
最近在使用NFineBase框架+c#做一个系统的时候,在使用sqlserver2012连接数据库的时候,遇到几个问题。一.就是在本地或者远程连接别人的数据库的时候,以ip地址作为服务器名称以SQLServer身份验证(即输入登录名和密码)的方式登录数据库总会出现错误比如说会提示一下错误:用户'sa'登录失败,该用户与可信SQLServer连接无关联...
数据库操作教程 2022-09-23 18:21:51 -
关于SQLServer中bit类型字段增删查改的一些事
前言本文主要给大家介绍了关于SQLServer中bit类型字段增删查改的一些事,话说BIT类型字段之前,先看“诡异”的一幕,执行Update成功,但是查询出来的结果依然是1,而不是Update的2当别人问起我来的时候,本人当时也是处于懵逼状态的,后面联想具体的业务突然想起来这个字段是bit类型的 如果把这个现象跟BIT类型字段连续起来就不觉得奇怪了。废话不多,直接上代码看结果就好了...
数据库操作教程 2022-09-23 18:21:17 -
SQLServer获取磁盘空间使用情况
对于DBA来说,监控磁盘使用情况是必要的工作,然后没有比较简单的方法能获取到磁盘空间使用率信息,下面总结下这些年攒下的脚本:最常用的查看磁盘剩余空间,这个属于DBA入门必记的东西:--查看磁盘可用空间EXECmaster.dbo.xp_fixeddrivesxp_fixeddrives方式有点是系统自带,可直接使用,缺点是不能查看磁盘总大小和不能查看SQLServer未使用到的磁盘信息使用sys.dm_os_volume_stats函数--======================================================================--查看数据库文件使用的磁盘空间使用情况WITHT1AS(SELECTDISTINCTREPLACE(vs.volume_mount_point,':','')ASDrive_Name,CAST(vs.total_bytes/1024.0/1024/1024ASNUMERIC(18,2))ASTotal_Space_GB,CAST(vs.available_bytes/1024.0/1024/1024ASNUME...
数据库操作教程 2022-09-23 18:21:17 -
SQLServer中关于基数估计计算预估行数的一些方法探讨
关于SQLServer2014中的基数估计,官方文档OptimizingYourQueryPlanswiththeSQLServer2014CardinalityEstimator里有大量细节介绍,但是全部是英文,估计也没有几个人仔细阅读。那么SQLServer2014中基数估计的预估行数到底是怎么计算的呢?有哪一些规律呢?我们下面通过一些例子来初略了解一下,下面测试案例仅供参考,如有不足或肤浅的地方,敬请指教!下面实验测试的环境主要为SQLServer2014SP2(StandardEdition(64-bit))具体版本号为12.0.5000.0,如有在其它版本测试,后面会做具体说明...
数据库操作教程 2022-09-23 18:20:51 -
SqlServer使用公用表表达式(CTE)实现无限级树形构建
SQLServer2005开始,我们可以直接通过CTE来支持递归查询,CTE即公用表表达式公用表表达式(CTE),是一个在查询中定义的临时命名结果集将在from子句中使用它。每个CTE仅被定义一次(但在其作用域内可以被引用任意次),并且在该查询生存期间将一直生存...
数据库操作教程 2022-09-23 18:20:19 -
SQLServer2012使用Offset/FetchNext实现分页数据查询
在SqlServer2012之前,实现分页主要是使用ROW_NUMBER(),在SQLServer2012,可以使用Offset...Rows FetchNext...Rowsonly的方式去实现分页数据查询。select[column1],[column2]...,[columnN]from[tableName]orderby[columnM]offset(pageIndex-1)*pageSizerowsfetchnextpageSizerowsonly上面代码中,column1,column2...columnN表示实现需要查询的列,tableName是表名,columnM是需要排序的列名,pageIndex是页码,pageSize是每页数据的大小,实际中一般是先计算(pageIndex-1)*pageSize的结果,然后在sql里直接使用具体的结果(数字)例如数据库中有T_Student表,数据如下: 假如需要查询第3页的数据(由于数据少,这里假设每页数据是2条,即pageSize=2),那么SQL语句如下:select[Id],[Name],[Studen...
数据库操作教程 2022-09-23 18:19:32 -
SQLJOIN连接详细介绍及简单使用实例
SQLJOIN连接SQLJOIN子句用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段。最常见的JOIN类型:SQLINNERJOIN(简单的JOIN)...
数据库操作教程 2022-09-23 18:15:19 -
SQL查询中需要使用别名问题
SQL查询中什么时候需要使用表别名?今天写MySQL时遇到使用表别名的问题,这里重新总结一下。1、表名很长时select*fromwww_baidu_userwherewww_baidu_user.id=1;和select*fromwww_baidu_useruwhereu.id=1;查询的结果一样,但是第二个使用表别名时更简洁...
数据库操作教程 2022-09-23 18:15:03 -
详解SQLServer中JSON_MODIFY的使用
SQLServer中JSON_MODIFY的使用IntroSQLServer从2016开始支持了一些JSON操作,最近的项目里也是好多地方字段直接存成了JSON,需要了解一下怎么在SQLServer中操作JSON.JSON支持适用于SQLServer2016及以上版本和AzureSQLDatabase。最近在项目中很多地方字段都是存一个JSON字符串,尤其是针对一些有很多不确定的属性的数据来说,这样的信息我们一般都放在一个Extra之类的字段保存一个JSON字符串,由于不确定性很大,很有可能会遇到要修改这个JSON字符串结构的问题,在修改JSON对象的某一个值和修改JSON的结构时都会用到JSON_MODIFY,今天就来介绍一下JSON_MODIFY的使用示例直接来看示例:--适用append在数组中追加元素PRINTJSON_MODIFY(@testJsonValue,'append$.skills','Azure');--无效用法,这样会把属性更新为字符串PRINTJSON_MODIFY(@testJsonValue,'$.skills','["C#","T-SQL","Azure...
数据库操作教程 2022-09-23 18:13:33 -
SQLServer在AlwaysOn中使用内存表的“踩坑”记录
前言最近因为线上alwayson环境的一个数据库上使用内存表。经过大概一个星期监控程序发现了一个非常严重问题这个数据库的日志文件不会截断,已用空间一直在增加(存在定时的每个小时的日志备份),同时内存表数据库文件也无法删除,下面就介绍一下后面我的处理过程,话不多说了,来一起看看详细的介绍吧...
数据库操作教程 2022-09-23 18:11:01