-
Sql Server中怎样通过父记录查找出全部关联的子记录
所属栏目:[MsSql教程] 日期:2016-11-09 热度:90
可查4级Sql代码 select menu_id,menu_name,Father_Id from Sys_Menu where menu_id='18' or Father_Id=18 or -- 一级、二级 Father_Id in (select menu_id from Sys_Menu a where menu_id='18' or Father_Id=18) or -- 三级 father_id in (select menu_id[详细]
-
Sql Server中怎样执行多条语句并返回Select查询后的姑且表
所属栏目:[MsSql教程] 日期:2016-11-09 热度:119
SET ANSI_NULLS ONGO SET QUOTED_IDENTIFIER ONGO -- ============================================= CREATE FUNCTION csj_csj(@id as int) RETURNS @temp table --这里返回一个自己创建的表,里面的字段根据自己的需要设 ( [id] int, [zd] varchar(100),[详细]
-
Sql Server 2008 R2占用内存一向增添到死锁的题目
所属栏目:[MsSql教程] 日期:2016-11-09 热度:127
最近有一客户服务器, 内存 小点, 内存 占用 很高,经查是sql server 问题 ,只能重启Sql服务器来清理内存,后来,试一方法,解决: 进入Sql server 企业管理器(管理数据库和表的,这个都不知道就不用往下看了),在数据库服务器名称上点击【右键】,选[详细]
-
Sql_Server中怎样判定表中某列是否存在
所属栏目:[MsSql教程] 日期:2016-11-09 热度:137
/*判断表AA中是否存在AA_ID这一列,如果不存在,则新增*/ IF NOT EXISTS (SELECT 1 FROM syscolumns INNER JOIN sysobjects ON sysobjects.id = syscolumns.id WHERE syscolumns.name = 'AA_ID' AND sysobjects.name = 'AA') ALTER TABLE AA ADD AA_ID VAR[详细]
-
行使Internals Viewer插件查察SQL SERVER内部数据页面
所属栏目:[MsSql教程] 日期:2016-11-09 热度:90
副标题#e# 感觉internals viewer这个名字起得很好,内部查看。 这个小工具是我之前看园子里的某大侠转载的文章是看到的 文章地址: SQL Server2008存储结构之堆表、行溢出 http://www.cnblogs.com/trams/archive/2010/09/11/1823727.html 这几天研究了一下[详细]
-
Sql Server中如何查询表中各列名称和表中列数
所属栏目:[MsSql教程] 日期:2016-09-28 热度:151
查询表名为tb_menu的所有列名 select name from syscolumns where id=object_id('tb_menu') 查询表名为tb_menu的所有列名个数 select count(name) from syscolumns where id=object_id('tb_menu') 或者 select count(syscolumns.name) from syscolumns ,sy[详细]
-
如何使用SQL生成DateTime.Ticks
所属栏目:[MsSql教程] 日期:2016-09-28 热度:167
在项目中我需要使用到一个随机数(Random Number),该随机数将作为 Hashtable 中的 Key 用于唯一索引数据,所以需要保持单机唯一性。 同时该随机数还需要具备可排序性以便对数据进行排序。 此时,我可以考虑使用随机字符串《C#生成MongoDB中的ObjectId》[详细]
-
如何在存储过程中执行别的存储过程并获取其返回的结果集
所属栏目:[MsSql教程] 日期:2016-09-28 热度:94
背景 在sqlserver存储过程的编写过程中,通常会碰到繁杂的业务逻辑,将一个大的存储过程拆分成多个小存储过程来做是常用的做法。 问题 在存储过程A中需要调用存储过程B,而存储过程B返回一个Table,A需要获取到B的Table,再进行下一步的处理。 本文解决的[详细]
-
从sql走向linq的问题
所属栏目:[MsSql教程] 日期:2016-09-28 热度:67
A left (outer) join B on A.bid=B.id 上面这句话叫做左连接,原因是left(左)join(加入,连入)被译为左连接,所以,这是关于语法中关键字的翻译,而非连接原理,造成不能以为是从第一张表的左边连接。相反,它是从A表的右边开始连接的。原因很简单,比如[详细]
-
Unused Index Script脚本的几个问题
所属栏目:[MsSql教程] 日期:2016-09-28 热度:140
以前使用过网上下载的脚本查询没有使用过的Index比如SQL SERVER 2008 Unused Index Script Download,其实现在看起来这个脚本是有一些问题。 脚本如下: -- UnusedIndex Script -- Original Author:Pinal Dave (C) 2011 SELECTTOP 25 o.name AS ObjectName[详细]
-
DBCC CHECK命令执行后会缓存扫描过的页面吗
所属栏目:[MsSql教程] 日期:2016-09-28 热度:122
我们都知道,凡是数据库都会尽量把使用过的数据页缓存到内存中,以便下次使用时能尽快的被获取,SQL Server也不例外。但是对于DBCC CHECK命令也是如此吗?你猜? 我用我的测试环境中最大的一张表,202兆,进行测试。 更多精彩内容:http://www.bianceng.cn[详细]
-
Sql Server实时错误:对象变量或with块变量未设置
所属栏目:[MsSql教程] 日期:2016-09-28 热度:133
大家这几天在做学生信息管理系统的时候,出现 最多的应该就是这个问题了,实时错误91:对象变量或with块变量未设置。如右图: 遇到这个问题,我们首先应该去参考MSDN,不过这时候MSDN似乎没有帮到我们很多,总结了一下,其实出现这个错误的情况有很多种:[详细]
-
SQL Server使用链接服务器的5个性能杀手
所属栏目:[MsSql教程] 日期:2016-09-28 热度:114
副标题#e# 当使用链接服务器(Linked Servers)时,最昂贵的代价就是网络带宽间大量数据的传输。在正确的服务器书写正确的代码是非常重要的,因为每一个错误都会导致在网络带宽上付出非常昂贵的代价。 下面是使用链接服务器(Linked Servers)时的几个常见[详细]
-
数据库还原成功后数据库依然处于还原状态
所属栏目:[MsSql教程] 日期:2016-09-28 热度:118
今天在还原数据库的时候,在ssms用以下代码还原数据库: RESTORE DATABASE [TEST] FROM DISK = N'D:TEST.BAK' WITH FILE = 1, MOVE N'TEST' TO N'C:Program FilesMicrosoft SQL ServerMSSQL10_50.MSSQLSERVERMSSQLDATAtest.mdf', MOVE N'TEST_log'[详细]
-
Sql Server中操作表及表结构的Select合集
所属栏目:[MsSql教程] 日期:2016-09-28 热度:90
1.增加字段 alter table docdsp add dspcode char(200) 2.删除字段 ALTER TABLE table_NAME DROP COLUMN column_NAME 3.修改字段类型 ALTER TABLE table_name ALTER COLUMN column_name new_data_type 4.sp_rename 改名 EXEC sp_rename '[dbo].[Table_1].[[详细]
-
Sql Server中循环和条件语句的使用示例
所属栏目:[MsSql教程] 日期:2016-09-28 热度:142
-- ╔════════╗ -- =============================== ║ if语句使用示例 ║ -- ╚════════╝ declare @a int set @a=12 if @a100 begin print @a end else begin print 'no' end -- ╔══════════╗ -- =======================[详细]
-
Sql Server中如何让程序暂停几秒中再执行后面的命令
所属栏目:[MsSql教程] 日期:2016-09-28 热度:105
-- 语法 WAITFOR { DELAY 'time_to_pass' | TIME 'time_to_execute' | [ ( receive_statement ) | ( get_conversation_group_statement ) ] [ , TIMEOUT timeout ] } 注意:Delay最多不超过24小时 waitfor delay'00:00:10' -- 暂停10秒 select GETDATE() WA[详细]
-
使用T-SQL的好习惯
所属栏目:[MsSql教程] 日期:2016-09-28 热度:156
副标题#e# 1.在生产环境中不要出现Select * 这一点我想大家已经是比较熟知了,这样的错误相信会犯的人不会太多。但我这里还是要说一下。 不使用Select *的原因主要不是坊间所流传的将*解析成具体的列需要产生消耗,这点消耗在我看来完全可以忽略不计。更主[详细]
-
T-SQL查询进阶:视图详解
所属栏目:[MsSql教程] 日期:2016-09-28 热度:105
副标题#e# 简介 视图可以看作定义在SQL Server上的虚拟表.视图正如其名字的含义一样,是另一种查看数据的入口.常规视图本身并不存储实际的数据,而仅仅存储一个Select语句和所涉及表的metadata. 视图简单的理解如下: 通过视图,客户端不再需要知道底层table[详细]
-
T-SQL查询进阶:流程控制语句
所属栏目:[MsSql教程] 日期:2016-09-28 热度:63
副标题#e# 概述 和其他高级语言一样,T-SQL中也有用于控制流程的语句。T-SQL中的流程控制语句进一步扩展了T-SQL的力量使得大部分业务逻辑可以在数据库层面进行。但很多人对T-SQL中的流程控制语句并没有系统的了解,本篇文章会系统的对T-SQL语句中的流程控制[详细]
-
T-SQL查询进阶:深入理解子查询
所属栏目:[MsSql教程] 日期:2016-09-28 热度:180
副标题#e# 引言 SQL有着非常强大且灵活的查询方式,而多表连接操作往往也可以用子查询进行替代,本篇文章将会讲述子查询的方方面面。 简介 子查询本质上是嵌套进其他SELECT,UPDATE,INSERT,DELETE语句的一个被限制的SELECT语句,在子查询中,只有下面几个子句[详细]
-
SQL Server误区:有关堆碎片的误区
所属栏目:[MsSql教程] 日期:2016-09-28 热度:187
误区 #29:可以通过对堆建聚集索引再DROP后进行堆上的碎片整理 Nooooooooooooo!!! 对堆建聚集索引再DROP在我看来是除了收缩数据库之外最2的事了。 如果你通过sys.dm_db_index_physical_stats(或是老版本的DBCC SHOWCONTIG)看到堆上有碎片,绝对不要通过建立[详细]
-
SQL Server误区:有关大容量事务日志恢复模式的误区
所属栏目:[MsSql教程] 日期:2016-09-28 热度:186
误区 #28:有关大容量事务日志恢复模式的几个误区 28 a)常见的DML操作可以被最小记录日志 不是。在大容量事务日志恢复模式下只有一小部分批量操作可以被最小记录日志,这类操作的列表可以在Operations That Can Be Minimally Logged找到。这是适合SQL Server[详细]
-
SQL Server误区:使用BACKUP ... WITH CHECKSUM可以替代DBCC CheckDB
所属栏目:[MsSql教程] 日期:2016-09-28 热度:103
误区 #27:使用BACKUP ... WITH CHECKSUM可以替代DBCC CheckDB 错误 乍一看,由于BACKUP WITH CHECKSUM会检测所有分配出去的页的校验和的值,这个误区貌似是这么回事,但实际上并不是这么回事,原因如下: 由SQL Server 2000或是更早版本升上来的数据库page[详细]
-
SQL Server误区:有关填充因子的误区
所属栏目:[MsSql教程] 日期:2016-09-28 热度:53
误区 #25:多个有关填充因子的误区 都是错误的 25a) 填充因子是一直存在的 不是的,通过Books Online可以看到(译者:我在新版的BOL没有找到这句话): 重要: 填充因子仅仅在索引创建或重建时生效,SQL Server存储引擎并不会一直保证页内的空闲值和填充因子保[详细]

浙公网安备 33038102330458号