数据库服务器改名后保证SQL 作业及复制可用
遇到先装SQL Server,后改计算机名,做作业的自动执行、服务器复制时遇到错误一样。按以下步骤操作可以修复:
方法一、
1、先查看计算机名:
SELECT @@SERVERNAME As [@@SERVERNAME],
CAST(SERVERPROPERTY('MACHINENAME') AS VARCHAR(128)) + COALESCE('\' + CAST(SERVERPROPERTY('INSTANCENAME') AS VARCHAR(128)), '') As RealInstanceName
2、直接执行下面语句:
DECLARE @InternalInstanceName sysname;
DECLARE @MachineInstanceName sysname;
SELECT @InternalInstanceName = @@SERVERNAME, @MachineInstanceName = CAST(SERVERPROPERTY('MACHINENAME') AS VARCHAR(128)) + COALESCE('\' + CAST(SERVERPROPERTY('INSTANCENAME') AS VARCHAR(128)), '');
IF @InternalInstanceName <> @MachineInstanceName
begin
-- Rename the instance
EXEC sp_dropserver @InternalInstanceName;
EXEC sp_addserver @MachineInstanceName, 'LOCAL'
END
3、重启SQL Server服务
方法二、
相关文档:
做数据库开发或管理的人经常要创建大量的测试数据,动不动就需要上万条,如果一条一条的录入,那会浪费大量的时间,本文介绍了Oracle中如何通过一条SQL快速生成大量的测试数据的方法。
产生测试数据的SQL如下:
SQL> select rownum as id,
2 &nbs ......
写法一:
set xact_abort on
begin tran
DECLARE @SQL VARCHAR(99)
DECLARE CUR_FK CURSOR LOCAL FOR
SELECT 'alter table '+ OBJECT_NAME(FKEYID) + ' drop constraint ' + OBJECT_NAME(CONSTID) from SYSREFERENCES
--删除所有外键
OPEN CUR_FK
FETCH CUR_FK INTO @SQL
WHILE @@FETCH_STATUS =0
BEGIN
......
if exists(select * from master.dbo.sysdatabases where name = 's2723103005')
begin
drop database s2723103005
print '已删除数据库s2723103005'
end
create database s2723103005
on primary
(name=His_data,
filename = 'd:\database\his_data.mdf',
siz ......
Oracle的数据类型
1.字符类型
•CHAR(n) 定长字符串,n字节,n的取值范围:1~2000字节。
•VARCHAR2(n) 可变长的字符串,定义时应指明最大长度,取值范围:1~ 4000字节。
•LONG 可变长字符列,最大长度限制2GB,一种较老的数据类型,逐渐被BLOB、CLOB、等大对象数据类型所取代。
2.数字类型
&bull ......