-
sqlserver 数据库压缩与数据库日志(ldf)压缩方法分享
所属栏目:[MsSql教程] 日期:2020-12-12 热度:144
Access 操作很简单,具体不步骤如下:打开你mdb数据库,工具-->数据库实用工具-->压缩和修复数据库(c)... SQL SERVER 一般情况下,SQL数据库的收缩并不能很大程度上减小数据库大小,其主要作用是收缩日志大小,应当定期进行此操作以免数据库日志过大[详细]
-
SQL语句的执行原理分析
所属栏目:[MsSql教程] 日期:2020-12-12 热度:174
原理: 第一步:应用程序把查询SQL语句发给服务器端执行。 我们在数据层执行SQL语句时,应用程序会连接到相应的数据库服务器,把SQL语句发送给服务器处理。 第二步:服务器解析请求的SQL语句。 1:SQL计划缓存,经常用查询分析器的朋友大概都知道这样一个事实,往[详细]
-
通过SQL Server的位运算功能巧妙解决多选查询方法
所属栏目:[MsSql教程] 日期:2020-12-12 热度:191
无论使用int还是varchar,对于Status的多选查询都是不易应对的。举例,常规思维下对CustomerStatus的Enum设置如下: div class="codetitle" a style="CURSOR: pointer" data="89913" class="copybut" id="copybut89913" onclick="doCopy('code89913')" 代码[详细]
-
获取星期几的名称
所属栏目:[MsSql教程] 日期:2020-12-12 热度:200
udf_WeekDayName div class="codetitle" a style="CURSOR: pointer" data="73475" class="copybut" id="copybut73475" onclick="doCopy('code73475')" 代码如下:div class="codebody" id="code73475" CREATE FUNCTION [dbo].[udf_WeekDayName] ( ) RETURNS @[详细]
-
MSSQL MySQL 数据库分页(存储过程)
所属栏目:[MsSql教程] 日期:2020-12-12 热度:182
先看看单条 SQL 语句的分页 SQL 吧。 方法1: 适用于 SQL Server 2000/2005 div class="codetitle" a style="CURSOR: pointer" data="91204" class="copybut" id="copybut91204" onclick="doCopy('code91204')" 代码如下:div class="codebody" id="code91204[详细]
-
此数据库没有有效所有者,因此无法安装数据库关系图支持对象
所属栏目:[MsSql教程] 日期:2020-12-12 热度:119
在新建数据库或附加数据库后,想添加关系表,结果出现下面的错误: 此数据库没有有效所有者,因此无法安装数据库关系图支持对象。若要继续,请首先使用“数据库属性”对话框的“文件”页或ALTER AUTHORIZATION语句将数据库所有者设置为有效登录名,然后再添[详细]
-
sp_executesql 使用复杂的Unicode 表达式错误的解决方法
所属栏目:[MsSql教程] 日期:2020-12-12 热度:145
Msg 102,Level 15,State 1,Line 3 Incorrect syntax near '+'. 当你尝试执行下面这段代码时,会得到如上这个错误提示。 div class="codetitle" a style="CURSOR: pointer" data="44932" class="copybut" id="copybut44932" onclick="doCopy('code44932')" 代[详细]
-
sqlserver 导出插入脚本代码
所属栏目:[MsSql教程] 日期:2020-12-12 热度:71
当然有其它工具可以做这件事,但如果客户不允许你在服务器乱装东西时这个脚本就会有用了。 div class="codetitle" a style="CURSOR: pointer" data="30544" class="copybut" id="copybut30544" onclick="doCopy('code30544')" 代码如下:div class="codebody"[详细]
-
OBJECTPROPERTY与sp_rename更改对象名称的介绍
所属栏目:[MsSql教程] 日期:2020-12-12 热度:90
相关的OBJECTPROPERTY可参考:http://msdn.microsoft.com/en-us/library/ms176105.aspx 开发过程中,错误免不了。为了纠正错误与规范化。可以使用MS SQL Server的系统存储过程sp_rename与OBJECTPROPERTY来更改重命名。 实例一,更改表名: 代码如下:IF EXISTS[详细]
-
sqlserver 动态创建临时表的语句分享
所属栏目:[MsSql教程] 日期:2020-12-12 热度:112
因此计划先把数据转插入一个临时表,再对临时表的数据进行分析。 问题点是如何动态创建临时表。原先Insus.NET使用下面代码实现: div class="codetitle" a style="CURSOR: pointer" data="44472" class="copybut" id="copybut44472" onclick="doCopy('code44[详细]
-
SQL 统计一个数据库中所有表记录的数量
所属栏目:[MsSql教程] 日期:2020-12-12 热度:125
div class="codetitle" a style="CURSOR: pointer" data="91396" class="copybut" id="copybut91396" onclick="doCopy('code91396')" 代码如下:div class="codebody" id="code91396" CREATE TABLE #tmptb(tbname sysname,tbrows int ,tbREserved varchar(10)[详细]
-
判断触发器正在处理的是插入,删除还是更新触发
所属栏目:[MsSql教程] 日期:2020-12-12 热度:128
但是有时候,可以视看处进逻辑程度,可以把三者写成一个触发器,只是在其中稍作判断而已。 你可以根据从下面方法判断触发器是是处理了插入,删除还是更新触发的: div class="codetitle" a style="CURSOR: pointer" data="41250" class="copybut" id="copybu[详细]
-
判断字段是否被更新 新旧数据写入Audit Log表中
所属栏目:[MsSql教程] 日期:2020-12-12 热度:183
Insus.NET解决这个问题,只有创建另外一个表,将存储用户决定要跟踪的表,以及这个表中需要跟踪的字段。 还要创建另外一个表[Audit],就是存储跟踪记录的表: div class="codetitle" a style="CURSOR: pointer" data="90517" class="copybut" id="copybut905[详细]
-
在SQL触发器或存储过程中获取在程序登录的用户
所属栏目:[MsSql教程] 日期:2020-12-12 热度:197
实现一个AuditLog的功能,是B/S结构专案。 每个用户可以登录系统,在程序中操作数据(添加,更新和删除)需要实现记录操作跟踪。是谁添加,更新和删除的,这些信息将会插入至AuditLog表中。 一般情况之下,在SQL的触发器中,只能取到(SQL验证sa;Windows验证Do[详细]
-
EXEC(EXECUTE)函数访问INSERTED或DELETED的内部临时触发表
所属栏目:[MsSql教程] 日期:2020-12-12 热度:166
刚开始时,这个表的字段很少(10个以内),前开发者把这个表的所有存储过程与触发器以及表函数全是写死了。用户每添加一些字段,都需要手动去更改这些存储过程与触发器以及表函数。现在这个表的字段已经高达300个以上,有可能还会增长,因此Insus.NET的业务[详细]
-
一次性压缩Sqlserver2005中所有库日志的存储过程
所属栏目:[MsSql教程] 日期:2020-12-12 热度:51
有没有办法更快一点? 有没有办法一次性收缩所有数据库? div class="codetitle" a style="CURSOR: pointer" data="90644" class="copybut" id="copybut90644" onclick="doCopy('code90644')" 代码如下:div class="codebody" id="code90644" alter database[详细]
-
SQL优化基础 使用索引(一个小例子)
所属栏目:[MsSql教程] 日期:2020-12-12 热度:152
按照本文操作和体会,会对sql优化有个基本最简单的了解,其他深入还需要更多资料和实践的学习: 1. 建表: div class="codetitle" a style="CURSOR: pointer" data="68781" class="copybut" id="copybut68781" onclick="doCopy('code68781')" 代码如下:div c[详细]
-
SQLServer Execpt和not in 性能区别
所属栏目:[MsSql教程] 日期:2020-12-12 热度:180
主要讲 except 和 not in 的性能上的区别。 div class="codetitle" a style="CURSOR: pointer" data="18635" class="copybut" id="copybut18635" onclick="doCopy('code18635')" 代码如下:div class="codebody" id="code18635" CREATE TABLE tb1(ID int) CRE[详细]
-
sqlserver 不重复的随机数
所属栏目:[MsSql教程] 日期:2020-12-12 热度:118
MSSQL随机数 MSSQL有一个函数CHAR()是将int(0-255) ASCII代码转换为字符。那我们可以使用下面MS SQL语句,可以随机生成小写、大写字母,特殊字符和数字。 大写字母: CHAR(ROUND(RAND() 25 + 65,0)) 小写字母: CHAR(ROUND(RAND() 25 + 97,0)) 特殊字符: CH[详细]
-
在sql Server自定义一个用户定义星期函数
所属栏目:[MsSql教程] 日期:2020-12-12 热度:176
文件:.wmv;大小:19,535KB;长度:00:26:39。 下载地址:SqlFunction_udf_Week.rar 以下内容于20120105更新: 2012年刚到,开发的软件使用这个函数发现bug。2012年第一周应该是2012-01-01至2012-01-07,但此函数却把2012-01-08至2012-01-14当作第一周。 就[详细]
-
某年第一周开始日期实现方法
所属栏目:[MsSql教程] 日期:2020-12-12 热度:127
参考网址 //www.jb51.cc/article/29551.htm div class="codetitle" a style="CURSOR: pointer" data="67039" class="copybut" id="copybut67039" onclick="doCopy('code67039')" 代码如下:div class="codebody" id="code67039" SELECT [StartDate] FROM [dbo[详细]
-
sqlserver 锁表语句分享
所属栏目:[MsSql教程] 日期:2020-12-12 热度:67
锁定数据库的一个表 SELECT FROM table WITH (HOLDLOCK) 注意: 锁定数据库的一个表的区别 SELECT FROM table WITH (HOLDLOCK) 其他事务可以读取表,但不能更新删除 SELECT FROM table WITH (TABLOCKX) 其他事务不能读取表,更新和删除 SELECT 语句中“加锁选[详细]
-
只有mdf文件的数据库附加失败的修复方法分享(置疑、只读)
所属栏目:[MsSql教程] 日期:2020-12-12 热度:102
只有mdf文件的数据库附加失败的修复 附加时报如下错误: 服务器: 消息 1813,级别 16,状态 2,行 1 未能打开新数据库 'test'。CREATE DATABASE 将终止。 设备激活错误。物理文件名 "d:datatest_log.LDF' 可能有误。 步骤: A、用“企业管理器”新建一个同[详细]
-
SQLServer 2000 升级到 SQLServer 2008 性能之需要注意的地方之
所属栏目:[MsSql教程] 日期:2020-12-12 热度:190
测试sql: div class="codetitle" a style="CURSOR: pointer" data="77849" class="copybut" id="copybut77849" onclick="doCopy('code77849')" 代码如下:div class="codebody" id="code77849" SET STATISTICS IO ON SET STATISTICS TIME ON SELECT COUNT(1)[详细]
-
数据库中聚簇索引与非聚簇索引的区别[图文]
所属栏目:[MsSql教程] 日期:2020-12-12 热度:194
在《数据库原理》里面,对聚簇索引的解释是:聚簇索引的顺序就是数据的物理存储顺序,而对非聚簇索引的解释是:索引顺序与数据物理排列顺序无关。正式因为如此,所以一个表最多只能有一个聚簇索引。 不过这个定义太抽象了。在SQL Server中,索引是通过二叉树的[详细]