-
数据库复制性能测试推送模式性能测试
数据库复制就是由两台服务器,主服务器和备份服务器,主服务器修改后,备份服务器自动修改,在以前的文章中已经做了详细的说明,这里就不在重复,具体请参见https://www.jb51.net/article/30661.htm使用了数据库复制的人,首先担心的就是主服务器和备份服务器的性能消耗问题,本人也是对此十分担忧,查了半天,基本上没发现类似的测试说明,就自己测试了一下,下面为测试的结果,仅供参考我采用的是数据库推送的复制模式,下面测试页是基于此模式因为数据库复制主要是I/O操作,所以在此测试主要测试服务器的硬盘读写操作,此次测试主要监控的对象为avg.diskqueuelength(下文简称为dql)简单可以理解成磁盘数据吞吐量的外在体现。通俗的将就是曲线上随便取两个不同的点,高的一点说明正在的进行读写操作的量比较大,反之,比较小...
数据库操作教程 2022-09-23 17:13:03 -
通过sql存储过程发送邮件的方法
SQLServer怎样配置发送电子邮件通常大家都知道:SQLServer与MicrosoftExchangeServer集成性很好,关于这方面的配置,在SQLServer的联机帮助里有详细的说明,在此不再赘述。然而我们更关心的问题是:在没有ExchangeServer的情况下,如何配置SQLServer利用Internet邮件服务器发送邮件? 笔者曾为这问题伤透了脑筋,搜遍了互联网上的相关资料,发现仅有的几篇资料中有的是一笔带过,有的虽然介绍了操作步骤,可按照步骤一步一步操作下来,结果总是失败...
数据库操作教程 2022-09-23 17:10:42 -
关于SQL存储过程入门基础(流程控制)
这里我们讲一下存储过程的流程控制,ifelse,case,while,这里没有for循环的,这些跟c,c++,c#等语言都差不过的。一,首先来看if else使用复制代码代码如下:if条件beginsql语句endelsebeginsql语句end看个简单例子复制代码代码如下:declare@idint --声明个变量set@id=5 --设置厨初始值if(@id=1) begin print'right' endelseif(@id=0) begin &nb...
数据库操作教程 2022-09-23 17:10:40 -
Sql学习第一天——SQL将变量定义为Table类型(虚拟表)
SQL将变量定义为Table类型在平时定义sql语句中的变量时通常我们定义的都是像char,varchar,nvarchar,int........,那如何让变量作为一个像虚拟表一样呢,其实很简单。基本语法:复制代码代码如下: declare@ttable(列名1列的数据类型1,列名2列的数据类型2,...............) insertinto@t(列名1,列名2,...............)values(...............)[code]或者[code] insertinto@t(列名1,列名2,...............)(select....from....)实验用表一(PeopleInfo): id name phone XC1 李某 123333333 XC2 小小 785555555例如: 复制代码代码如下: declare@ttable(idnvarchar(3),[name]nvarchar(10))insertinto@t(id,[name])(selectid,[name]fromPeopleInfowher...
数据库操作教程 2022-09-23 17:10:36 -
SQLServer复制需要有实际的服务器名称才能连接到服务器
今天在做sqlServer2005的实验的时候碰到的问题,问题描述很清楚,怀疑是我以前给计算机修改了名称而导致的.可以用select@@servername和selectserverproperty('servername')对照一下,两个的结果是否一样,不一样就会出现问题,以下给出解决的SQL脚本复制代码代码如下:ifserverproperty('servername')<>@@servernamebegindeclare@serversysnameset@server=@@servernameexecsp_dropserver@server=@serverset@server=cast(serverproperty('servername')assysname)execsp_addserver@server=@server,@local='LOCAL'end执行之后,重新sql即可解决这个问题...
数据库操作教程 2022-09-23 17:10:31 -
sqlserverbcp(数据导入导出工具)一般用法与命令详解
bcp是SQLServer中负责导入导出数据的一个命令行工具,它是基于DB-Library的,并且能以并行的方式高效地导入导出大批量的数据。bcp可以将数据库的表或视图直接导出,也能通过SELECTFROM语句对表或视图进行过滤后导出...
数据库操作教程 2022-09-23 17:10:27 -
T-SQL问题解决集锦数据加解密全集
以下代码已经在SQLServer2008上的示例数据库测试通过问题一:如何为数据进行加密与解密,避免使用者窃取机密数据?对于一些敏感数据,如密码、卡号,一般不能使用正常数值来存储。否则会有安全隐患...
数据库操作教程 2022-09-23 17:10:23 -
sqlserver主键设计的注意点
在设计主键的时候往往需要考虑以下几点:1.无意义性:此处无意义是从用户的角度来定义的。这种无意义在一定程度上也会减少数据库的信息冗余...
数据库操作教程 2022-09-23 17:10:16 -
SQLServer设置主键自增长列(使用sql语句实现)
1.新建一数据表,里面有字段id,将id设为为主键复制代码代码如下:createtabletb(idint,constraintpkidprimarykey(id))createtabletb(idintprimarykey)2...
数据库操作教程 2022-09-23 17:10:15 -
SQL行号排序和分页(SQL查询中插入行号自定义分页的另类实现)
(一)行号显示和排序1.SQLServer的行号A.SQL2000使用identity(int,1,1)和临时表,可以显示行号SELECTidentity(int,1,1)ASROWNUM,[DataID]INTO#1FROMDATASorderbyDataID;SELECT*FROM#1B.SQL2005提供一个很好用的函数row_number(),可以直接用来显示行号,当然也可以使用SQL2000的identitySELECTrow_number()over(ORDERBYDataID)ASROWNUM,[DataID]FROMDATAS;这里如果添加排序功能,则先排序再添加行号2.ORACLE的行号显示使用ROWNUMSELECTROWNUM,[DataID]FROMDATASorderbyDataID注意:先加行号再排序,如果想排序好再加行号就要使用子查询3.取前n条数据A.SQL版selecttopn[DataID]fromDATASB.ORACLE版SELECT[DataID]FROMDATASwhereROWNUM<=n其中,n>=1ORACLE的ROWNUM...
数据库操作教程 2022-09-23 17:10:11 -
SQLServer数据库索引其索引的小技巧
一、什么是索引减少磁盘I/O和逻辑读次数的最佳方法之一就是使用【索引】索引允许SQLServer在表中查找数据而不需要扫描整个表。1.1、索引的好处:当表没有聚集索引时,成为【堆或堆表】【堆】是一堆未加工的数据,以行标识符作为指向存储位置的指针...
数据库操作教程 2022-09-23 17:10:11 -
Sql学习第三天——SQL关于CTE(公用表达式)的递归查询使用
关于使用CTE(公用表表达式)的递归查询----SQLServer2005及以上版本 公用表表达式(CTE)具有一个重要的优点,那就是能够引用其自身,从而创建递归CTE。递归CTE是一个重复执行初始CTE以返回数据子集直到获取完整结果集的公用表表达式...
数据库操作教程 2022-09-23 17:10:05