SQL Server服务器名称与默认实例名不一致的修复方法
原因分析:
SERVERPROPERTY 函数的 ServerName 属性与@@SERVERNAME 返回相似的信息。ServerName 属性提供Windows 服务器和实例名称,两者共同构成唯一的服务器实例;@@SERVERNAME 提供当前配置的本地服务器名称。
如果安装时未更改默认服务器名称,则 ServerName 属性和 @@SERVERNAME 返回相同的信息。如果在安装时已将本地服务器名称从默认服务器名称更改为其他名称,则 @@SERVERNAME 返回更改后的新名称。
如果安装时未更改默认服务器名称,但是安装完成后更改过Windows 服务器名称,则@@SERVERNAME仍然返回安装时的服务器名称,ServerName 属性返回更改过后的Windows 服务器名称。也就是说,@@SERVERNAME不会报告Windows 服务器名称的更改,ServerName 属性会报告Windows 服务器名称的更改。这就会造成SQL Server默认实例的@@SERVERNAME和ServerName 属性不一致。这种情况在一些应用中常常会出现无法连接的问题,有时我们需要修复这种情况。
修复方法:
修复方法很简单,直接执行以下语句即可。
if serverproperty('servername') <> @@servername
begin
declare @server sysname
set @server = @@servername
exec sp_dropserver @server = @server
set @server = cast(serverproperty('servername') as sysname)
exec sp_addserver @server = @server , @local = 'LOCAL'
end
相关文档:
我们在工作中希望能看见自己运行的DML语句的运行报告,例如select,delete,update,megre和insert语句运行后的情况,以用来监视和调优语句。我们通常在sql*plus中使用set autotrace on开启。
那autotrace是如何安装的呢?thomas kyte的大作中给出了详细的方法和解释:
& ......
这几天负责一个家教门户网站的开发,基于cakephp框架。在培训机构表(schools)中存在一个字段subject用来存储另一个数据表
(subjects)中记录的id值,且存储形式为:'1,2,3,4,5'。但是在应用高级搜索过滤时页面select选项option的传值为
subjects的id值,需要判断查询表schools中subject字段存在此id,即查询显示此记录 ......
RANK ( ) OVER ( [query_partition_clause] order_by_clause )
DENSE_RANK ( ) OVER ( [query_partition_clause] order_by_clause )
可实现按指定的字段分组排序,对于相同分组字段的结果集进行排序,
其中PARTITION BY 为分组字段,ORDER BY 指定排序字段
over不能单独使用,要和分析函数:rank(),dense_rank(),row_n ......
Transact-SQL
语言使用的流程控制命令与常见的程序设计语言类似主要有以下几种控制命令。
4.6.1 IF…ELSE
其语法如下:
IF <条件表达式>
<命令行或程序块>
[ELSE [条件表达式]
<命令行或程序块>]
其中<条件表达式>可以是各种表达式的组合,但表达式的值必须是逻辑值“真&rdq ......
1、进入企业管理器中->管理->sql server代理->作业;
2、新建作业,作业名称随便取,例如:data备份,所有者选择sa,当然你也可以选择其他用户,前提是该用户有执行作业的权限;
3、点击步骤标签,进入步骤面板。新建步骤,步骤名可以随便填写,如步骤1,类型和数据库默认,不 ......