-
SQLServer2005实现数据库同步备份过程-结果-分析
数据库复制:简单来说,数据库复制就是由两台服务器,主服务器和备份服务器,主服务器修改后,备份服务器自动修改。复制的模式有两种:推送模式和请求模式,推送模式是主服务器修改后,自动发给备份服务器,请求模式是,备份服务器自动去请求,个人开始也比较重视去测试两个模式的差别,但是测试发现,其实两个模式差别不是很大,在当今的服务器配置中,没必要考虑这么多,虽然会有一些差别,但是可在可以忽略的范围之内,建议直接选择推送模式,因为配置起来相对简单数据库发布类型有三种:快照发布,事务性发布,具有可更新订阅和事务性发布,合并发布一般都会采用事务性发布,具体好处,就不说了,网上一大堆的复制过程:第一:点开数据库--复制---本地发布---新建发布 下面只提供需要注意的地方,其他的点击下一步即可上面已经说了,推荐事物一般只复制表即可,但是如果需要其他的,请自行考虑快照,如果每天需要快照一次,那么可以点击下面的按钮,如果只快照一次的话,就没必要了使用默认配置即可这样不出意外就完成了一个发布服务器的配置,那么现在配置订阅服务器可以在你自己机器上直接操作第一:点开数据库--复制---本地发布-...
数据库操作教程 2022-09-23 17:09:56 -
SQLSERVER的排序问题结果不是想要的
在论坛里经常有人问这样的问题:同一个查询的结果集为什麽有时候是按他想要的顺序排列,有时候又不是,或者是在SQL2000里是这个顺序,到了SQL2005/2008又是那个顺序?其实,只要语句里没有指定“orderby”,SQLSERVER并不会按照顺序返回的。有可能你的表里有一个字段已经建立了索引你想结果集按照那个建立了索引的字段排序,那么你不指定“orderby”是没有问题的,因为表的存储顺序就是按照那个字段的顺序排好序了,所以可以不指定“orderby”,但是如果你没有在想排序的那个字段建立索引,或者在SQL2000里建立了索引,而在SQL2005/2008里没有建立索引,那么就要明确地用“orderby”指定...
数据库操作教程 2022-09-23 17:07:22 -
SQLServer利用bcp命令把SQL语句结果生成文本文件
在SQLServer里可以调用DOS下的命令行工具bcp来实现把表里的数据或者SQL语句结果生成文本文件。BCP命令的参数格式:复制代码代码如下:BCP{dbtable|query}{in|out|queryout|format}datafile[-mmaxerrors] [-fformatfile] [-eerrfile][-Ffirstrow] [-Llastrow] [-bbatchsize][-nnativetype] [-ccharactertype] [-wwidecharactertype][-Nkeepnon-textnative][-Vfileformatversion][-qquotedidentifier][-Ccodepagespecifier] [-tfieldterminator] [-rrowterminator][-iinputfile] [-ooutfile] [-apacketsize][-Sservername] [-Uusername] [-Ppasswor...
数据库操作教程 2022-09-23 17:06:43 -
SQLServerCONVERT函数测试结果
复制代码代码如下:SELECTCONVERT(varchar(100),GETDATE(),0):0516200610:57AMSELECTCONVERT(varchar(100),GETDATE(),1):05/16/06SELECTCONVERT(varchar(100),GETDATE(),2):06.05...
数据库操作教程 2022-09-23 16:58:39 -
SQLSERVER语句的执行时间显示的统计结果是什么意思
在SQL语句调优的时候,大部分都会查看语句执行时间,究竟SQLSERVER显示出来的统计结果是什么意思?下面看一下例子比较简单的语句:复制代码代码如下:1SETSTATISTICSTIMEON2USE[pratice]3GO4SELECT*FROM[dbo].[Orders]结果:复制代码代码如下:SQLServer分析和编译时间:CPU时间=0毫秒,占用时间=0毫秒。SQLServer执行时间:CPU时间=0毫秒,占用时间=0毫秒...
数据库操作教程 2022-09-23 16:57:24 -
union组合结果集时的order问题
近日,在一个项目中用到union组合两个select结果,调试sql时总是报错,所报错误也只是说在union附近有问题,因为sql中用到了group,我想也许是union不支持吧,由于时间紧,就先在程序中做了合并处理。但程序员对于代码的完美性要求总是不能放弃的,所以,常常会有如鲠在喉的感觉,不搞明白心里会不舒服...
数据库操作教程 2022-09-23 16:56:30 -
sql查询结果合并unionall用法_数据库技巧
复制代码代码如下:--合并重复行select*fromAunionselect*fromB--不合并重复行select*fromAunionallselect*fromB按某个字段排序--合并重复行select*from(select*fromAunionselect*fromB)ASTorderby字段名--不合并重复行select*from(select*fromAunionallselect*fromB)ASTorderby字段名//sqlserver版Select*From(selecttop2id,adddate...
数据库操作教程 2022-09-23 16:54:35 -
根据多条件查询临时表想得到不同结果集的方法
当我写下如下sql语句时,我得到了输入@c参数时想得到的结果集。select*[email protected](selectidfromtbwheref=@c)但如果有@a,@b,@c,而它们分别想从@tb中得到不同的结果集,例如复制代码代码如下:if@aisnotnullbegin--得到@a想得到的endif@bisnotnullbegin--得到@b想得到的endif@cisnotnullbegin--得到@c想得到的end这样做好像没什么问题,但如果@a和@b是一起的,甚至是@a,@b,@c,@d,@e,@f等等N多种条件组合,这样就不好办了...
数据库操作教程 2022-09-23 16:53:56 -
SQL处理多级分类,查询结果呈树形结构
这样处理的弊端是:如果数据量大,子分类很多,达到4级以上,这方法处理极端占用数据库连接池对性能影响很大。如果用SQL下面的CTE递归处理的话,一次性就能把结果给查询出来,而且性能很不错比用程序处理(数据量很大的情况),临时表性能更好,更方便复制代码代码如下:withareaas(select*,idpx,cast(idasnvarchar(4000))px2fromregionwhereparentid=0unionallselecta.*,b.px,b.px2+ltrim(a.region_id)fromregionajoinareabona.parentid=b.id)select*fromareaorderbypx,px2可以查询出结果—-所有分类及相应分类下子分类idtitleparentid1广东省02广州13白云区24深圳15湖南省06长沙57株洲5复制代码代码如下:withareaas(select*fromregionwhereparentid=1unionallselecta.*fromregionajoinareabona.parentid=b.id)select*...
数据库操作教程 2022-09-23 16:48:24 -
sql查询记录数结果集某个区间内记录
以查询前20到30条为例,主键名为id方法一:先正查,再反查selecttop10*from(selecttop30*fromtablenameorderbyidasc)Aorderbyiddesc方法二:使用leftjoinselecttop10A.*fromtablenameAleftouterjoin(selecttop20*fromtablenameorderbyidasc)BonA...
数据库操作教程 2022-09-23 16:48:10 -
SQL排除重复结果只取字段最大值分享
如何用SQL排除重复结果只取字段最大值的记录?要求得到的结果(即是PID相同的记录只取ID值最大的那一条)。复制代码代码如下:select*from[Sheet1$]awhere IDnotexists(select1from[Sheet1$]wherePID=a.PIDandID>a.ID)selecta.*from[Sheet1$]ainnerjoin(selectPID,max(ID)asmax_idfrom[Sheet1$]groupbyPID)bona.PID=b.PIDanda.ID=b.max_id...
数据库操作教程 2022-09-23 16:46:43 -
SQLServer中将查询结果转换为Json格式脚本分享
脚本源码:复制代码代码如下:SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATEPROCEDURE[dbo].[SerializeJSON](@ParameterSQLASVARCHAR(MAX))ASBEGIN DECLARE@SQLNVARCHAR(MAX)DECLARE@XMLStringVARCHAR(MAX)DECLARE@XMLXMLDECLARE@ParamlistNVARCHAR(1000)SET@Paramlist=N'@XMLXMLOUTPUT'SET@SQL='WITHPrepareTable(XMLString)'SET@SQL=@SQL+'AS('SET@SQL=@SQL+@ParameterSQL+'FORXMLRAW,TYPE,ELEMENTS'SET@SQL=@SQL+')'SET@SQL=@SQL+'SELECT@XML=[XMLString]FROM[PrepareTable]'EXECsp_executesql@SQL,@Paramlist,@XML=@XMLOUTPUTSET@XML...
数据库操作教程 2022-09-23 16:45:25