SQL SERVER性能优化 Tempdb相关问题
TEMPDB不支持自动压缩,且它的数据库和文件压缩能力是有限制的;
如不得不压缩TEMPDB的大小,建议使用离线功能,如下操作:
1.停止SQL SERVER服务;
2.找到sqlservr.exe在磁盘中的位置;
3.使用sqlservr.exe输入命令sqlservr -c -f,这样启动SQL SERVER时,TEMPDB的大小能够保持最小;
4.使用TSQL命令:ALTER DATABASE TEMPDB MODIFY FILE(),这样就可以改变TEMPDB的大小;
5.重启SQL SERVER服务;
TEMPDB空间有三种对象--用户对象、内部对象以及版本存储对象;
用户对象:
用户定义的本地临时表中临时使用的对象;
例:select * from sys.all_objects
内部对象:
·········10········20········30········40········50········60········70········80········90········100·······110·······120·······130·······140·······150
declare @i int
set @i = 0
create table #myTempTable (keycolumn int, mybigCharColumn char (1000) )
while (@i < 1000000)
begin
insert into #myTempTable values(@i,'x' )
set @i = @i + 1
end
select * from #myTempTable
order by keycolumn
declare @i int
set @i = 0
create table #myTempTable (keycolumn int, mybigCharColumn char (1000) )
while (@i < 100000
相关文档:
--合并行,并返回合并的值
Create proc [dbo].[proUniteRow]
@tab varchar(30), --表名
@col varchar(30), --合并的列名
@where varchar(2000), &nbs ......
一、 PL/SQL语言简介
(本讲义之所有程序均调式通过)
首先我们看一个简单之例子,下面这个例子是统计从1至100的总和.
declare
i number:=0; /*声明变量井给初值*/
t number:=1;
error_message exception; /*声明一个出错处理*/
begin
......
方法(1)
SELECT stuff((select ','+ltrim(ColumnName) from #A for xml path('')
),1,1,'')
/*
102,103,104,105
*/
方法(2)
DECLARE @s NVARCHAR(1000)='';
SELECT @s+=ColumnName+',' from #A;
SELECT @s; ......
sql 2005表的复制有两种:一种就是把整个表复制过去,就好像复制文件并且重命名。别外一种就是把表的内容复制过出.
select * into newtable form oldtable;把oldtabel复制到newtable且newtable不存在,否则出错.;
insert into newtable select * from oldtable把oldtable的内容插入到newtable, newtable一定要存在, ......
今天在配置数据库发布和分发时总是报出现 18483 错误
提示说:错误 18483:未能连接到服务器 "XXX",因为 'distributor_admin'未在该服务器上定义为远程登陆。
我的发布和分发是同一个服务器,"XXX" 为我的机器名,分发数据库是默认的名称,而我在另外一台机器上做时就正常。
1、设置共享复制目录:
......