- 
            	  SQL建立数据库及删除数据库操作所属栏目:[MsSql教程] 日期:2021-12-24 热度:154 复制代码 代码如下: CREATE DATABASE 临时的 ON (, FILENAME=h:临时的.mdf, SIZE=5MB, MAXSIZE=50MB, FILEGROWTH=10% ) LOG ON ( NAME=临时的_LOG, FILENAME=h:临时的.ldf, SIZE=2MB, MAXSIZE=5MB, FILEGROWTH=1MB ) 这样就在H盘建立了一个名字为 临时的.[详细] 
- 
            	  处理SQL Server的“此数据库没有有效所有者”问题所属栏目:[MsSql教程] 日期:2021-12-24 热度:164 在附加数据库后查看不了数据库关系图,也无法建立数据库关系图 我的解决方法如下: 1、设置兼容级别为90(2005为90)(2000为80) 复制代码 代码如下: USE [master] GO EXEC dbo.sp_dbcmptlevel @dbname=数据库名, @new_cmptlevel=90 GO [这条命令执行完毕[详细] 
- 
            	  sqlserver not in 语句使程序崩溃所属栏目:[MsSql教程] 日期:2021-12-24 热度:132 两张表 组织架构表(Organise) 和 工资发放历史记录表 (WagePerMonthHis) 两张表通过 Organise.Item_id 和 WagePerMonthHis.OrgIdS 进行关联 Organise表(以下简称O表)中大约有6000条记录11个字段 ,WagePerMonthHis(以下简称W表)计有 125万条记录 和 25个[详细] 
- 
            	  SQL Server 置疑、可疑、正在恢复等情况了解所属栏目:[MsSql教程] 日期:2021-12-24 热度:191 一、出错情况 有些时候当你重启了数据库服务,会发现有些数据库变成了正在恢复、置疑、可疑等情况,这个时候DBA就会很紧张了,下面是一些在实践中得到证明的方法。 在一次重启数据库服务后,数据库显示正在恢复,过了很久还是这个状态,离线时间不能太长,[详细] 
- 
            	  自动定时备份sqlserver数据库的措施所属栏目:[MsSql教程] 日期:2021-12-24 热度:136 下面是我已经证实可用的自动备份的方法. 1、打开企业管理器-管理-sql server代理 2、新建一个作业,作业名称随便取,例如:data备份,所有者选择sa,当然你也可以选择其他用户,前提是该用户有执行作业的权限; 3、点击步骤标签,进入步骤面板.新建步骤,步骤名可[详细] 
- 
            	  扩展性很好的一个分页存储过程分析所属栏目:[MsSql教程] 日期:2021-12-24 热度:139 这是经常用的一个分页存储过程 希望大家指点不足 复制代码 代码如下: USE [a6756475746] GO /****** Object: StoredProcedure [dbo].[tbl_order_SearchWhereAndPage] Script Date: 11/01/2011 09:37:39 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER[详细] 
- 
            	  sqlserver 临时表 Vs 表变量 详细说明所属栏目:[MsSql教程] 日期:2021-12-24 热度:102 这里我们在SQL Server 2005SQL Server 2008版本上通过举例子,说明临时表和表变量两者的一些特征,让我们对临时表和表变量有进一步的认识。在本章中,我们将从下面几个方面去进行描述,对其中的一些特征举例子说明: 约束(Constraint) 索引(Index) I/0开销[详细] 
- 
            	  mssql存储过程表名和字段名为变量的实现方案所属栏目:[MsSql教程] 日期:2021-12-24 热度:170 没有使用动态语句直接报错 错误的 复制代码 代码如下: alter proc testpapers as begin declare @tems nvarchar(max),@zidaun nvarchar(max) set @tems=select * from @tems order by @zidaun exec(@tems) end exec testpapers 消息 156,级别 15,状态 1,[详细] 
- 
            	  SQL中exists的使用说明所属栏目:[MsSql教程] 日期:2021-12-24 热度:81 有一个查询如下: 复制代码 代码如下: SELECT c.CustomerId, CompanyName FROM Customers c WHERE EXISTS( SELECT OrderID FROM Orders o WHERE o.CustomerID = cu.CustomerID) 这里面的EXISTS是如何运作呢?子查询返回的是OrderId字段,可是外面的查询要找[详细] 
- 
            	  SQLServer Execpt和not in 性能差异所属栏目:[MsSql教程] 日期:2021-12-24 热度:101 主要讲 except 和 not in 的性能上的区别。 复制代码 代码如下: CREATE TABLE tb1(ID int) CREATE TABLE tb2(ID int) BEGIN TRAN DECLARE @i INT = 500 WHILE @i 0 begin INSERT INTO dbo.tb1 VALUES ( @i -- v - int ) SET @i = @i -1 end COMMIT我测试的[详细] 
- 
            	  确定触发器正在处理的是插入,删除还是更新触发所属栏目:[MsSql教程] 日期:2021-12-24 热度:58 但是有时候,可以视看处进逻辑程度,可以把三者写成一个触发器,只是在其中稍作判断而已。 你可以根据从下面方法判断触发器是是处理了插入,删除还是更新触发的: 复制代码 代码如下: --宣告两个变量 DECLARE @D BIT = 0 DECLARE @I BIT = 0 --如果在DELETE[详细] 
- 
            	  决定字段是否被更新 新旧数据写入Audit Log表中所属栏目:[MsSql教程] 日期:2021-12-24 热度:77 Insus.NET解决这个问题,只有创建另外一个表,将存储用户决定要跟踪的表,以及这个表中需要跟踪的字段。 还要创建另外一个表[Audit],就是存储跟踪记录的表: 复制代码 代码如下: Audit SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO SET ANSI_PADDING[详细] 
- 
            	  SQL 计算一个数据库中所有表记录的数量所属栏目:[MsSql教程] 日期:2021-12-24 热度:133 复制代码 代码如下: CREATE TABLE #tmptb(tbname sysname,tbrows int ,tbREserved varchar(10),tbData varchar(10) ,tbIndexSize varchar(10),tbUnUsed varchar(10)) INSERT INTO #tmptb exec sp_MSForEachTable EXEC sp_spaceused ? SELECT * from #tmptb[详细] 
- 
            	  sqlserver 动态创建临时表的语句说明所属栏目:[MsSql教程] 日期:2021-12-24 热度:196 因此计划先把数据转插入一个临时表,再对临时表的数据进行分析。 问题点是如何动态创建临时表。原先Insus.NET使用下面代码实现: 复制代码 代码如下: DECLARE @s NVARCHAR(MAX) = IF OBJECT_ID([dbo].[#Tb]) IS NOT NULL DROP TABLE [dbo].[#Tb] CREATE TAB[详细] 
- 
            	  某年第一周实施日期实现方法所属栏目:[MsSql教程] 日期:2021-12-24 热度:81 复制代码 代码如下: SELECT [StartDate] FROM [dbo].[udf_Week](2012,2012) WHERE [Week] = 1 上面SQL语句执行结果: 但你还是觉得此方法很复杂,而且只需要日期部分,时间部分无需显示。因此Insus.NET更改并产生如下一个新函数,你把函数附加入你的数据库[详细] 
- 
            	  在sql Server自定义一个用户定义星期代码所属栏目:[MsSql教程] 日期:2021-12-24 热度:161 文件:.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教程] 日期:2021-12-24 热度:102 以下为测试例子。 1.首先创建两张临时表并录入测试数据: 复制代码 代码如下: create table #temptest1 ( id int, name1 varchar(50), age int ) create table #temptest2 ( id int, name1 varchar(50), age int ) 查询出此时的表数据为: #temptest1 #temp[详细] 
- 
            	  SqlServer中的日期与时间代码所属栏目:[MsSql教程] 日期:2021-12-24 热度:171 一、Sql Server中的日期与时间函数 1. 当前系统日期、时间 select getdate() 2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值 例如:向日期加上2天 select dateadd(day,2,2004-10-15) --返回:2004-10-17 00:00:00.000 3. datediff 返[详细] 
- 
            	  SQL截取字符串函数了解所属栏目:[MsSql教程] 日期:2021-12-24 热度:198 A.截取从字符串左边开始N个字符 Declare @S1 varchar(100) Select @S1=http://www.xrss.cn Select Left(@S1,4) ------------------------------------ 显示结果: http B.截取从字符串右边开始N个字符(例如取字符) Declare @S1 varchar(100) Select @S1=http[详细] 
- 
            	  mssql server 数据库附加不上解决办法分享所属栏目:[MsSql教程] 日期:2021-12-24 热度:89 在QA里执行sp_attach_db或者sp_attach_single_file_db,出现提示:错误1813:未能打开新数据库dbname,create database 将终止。设备激活错误。物理文件名d:sql servermssqldatadbname _log.ldf可能有误! 按下面的步骤处理: 1.新建一个同名的数据库 2.[详细] 
- 
            	  SQL语句 一个简单的字符串分割函数所属栏目:[MsSql教程] 日期:2021-12-24 热度:147 复制代码 代码如下: CREATE FUNCTION dbo.f_splitstr( @str varchar(8000) )RETURNS @r TABLE(id int IDENTITY(1, 1), value varchar(5000)) AS BEGIN /* Function body */ DECLARE @pos int SET @pos = CHARINDEX(,, @str) WHILE @pos 0 BEGIN INSERT @r(v[详细] 
- 
            	  小议sqlserver数据库主键选取策略所属栏目:[MsSql教程] 日期:2021-12-24 热度:200 因为主键可以唯一标识某一行记录,所以可以确保执行数据更新、删除的时候不会出现张冠李戴的错误。当然,其它字段可以辅助我们在执行这些操作时消除共享冲突,不过就不在这里讨论了。主键除了上述作用外,常常与外键构成参照完整性约束,防止出现数据不一致[详细] 
- 
            	  sqlserver自动增长列引起的问题解决方法所属栏目:[MsSql教程] 日期:2021-12-24 热度:93 有两个结构完全相同的表,由其中一个表插入另一个表中指定条件的数据,报如下错误: 仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表*中的标识列指定显式值。 在网上找到了解决方案,亲自试过,可以解决。 方法: 复制代码 代码如下: SET IDENTIT[详细] 
- 
            	  sqlserver 存储过程动态参数调用实现代码所属栏目:[MsSql教程] 日期:2021-12-24 热度:72 复制代码 代码如下: --创建测试表 CREATE TABLE [dbo].[Student]( [ID] [int] IDENTITY(1,1) NOT NULL PRIMARY KEY, [Name] [nvarchar](20) NOT NULL DEFAULT (), [Age] [int] NOT NULL DEFAULT (0), [Sex] [bit] NOT NULL DEFAULT (0), [Address] [nvarch[详细] 
- 
            	  通过分析SQL语句的执行计划优化SQL所属栏目:[MsSql教程] 日期:2021-12-24 热度:166 如何干预执行计划 - - 使用hints提示 基于代价的优化器是很聪明的,在绝大多数情况下它会选择正确的优化器,减轻了DBA的负担。但有时它也聪明反被聪明误,选择了很差的执行计划,使某个语句的执行变得奇慢无比。此时就需要DBA进行人为的干预,告诉优化器使[详细] 
