if you can't create database diagrams on SQL server, execute the following T-SQL

[tips]T_SQL @ 2000 AND 2005USE [master]
[tips]T_SQL @ 2000 AND 2005
GO
[tips]T_SQL @ 2000 AND 2005
EXEC dbo.sp_dbcmptlevel @dbname='CMDB'@new_cmptlevel=90
[tips]T_SQL @ 2000 AND 2005
GO
[tips]T_SQL @ 2000 AND 2005
[tips]T_SQL @ 2000 AND 2005
ALTER AUTHORIZATION ON database::dbname TO sa
[tips]T_SQL @ 2000 AND 2005


Cursor

[tips]T_SQL @ 2000 AND 2005-- Declare a cursor
[tips]T_SQL @ 2000 AND 2005
DECLARE custom_cursor CURSOR
[tips]T_SQL @ 2000 AND 2005 
[tips]T_SQL @ 2000 AND 2005
FOR    SELECT EmployeeID, LastName, FirstName FROM Employees
[tips]T_SQL @ 2000 AND 2005
[tips]T_SQL @ 2000 AND 2005
-- declare a temporary various
[tips]T_SQL @ 2000 AND 2005
DECLARE @tmopEmployeeID INT
[tips]T_SQL @ 2000 AND 2005
DECLARE @LastName varchar(50)
[tips]T_SQL @ 2000 AND 2005
DECLARE @FirstName varchar(50)
[tips]T_SQL @ 2000 AND 2005
[tips]T_SQL @ 2000 AND 2005
-- open the cursor
[tips]T_SQL @ 2000 AND 2005
OPEN custom_cursor
[tips]T_SQL @ 2000 AND 2005
[tips]T_SQL @ 2000 AND 2005
--GET THE NEXT RECORD
[tips]T_SQL @ 2000 AND 2005
FETCH NEXT FROM custom_cursor INTO @tmopEmployeeID , @LastName@FirstName
[tips]T_SQL @ 2000 AND 2005
[tips]T_SQL @ 2000 AND 2005
-- GET SUCCESSFULLY
[tips]T_SQL @ 2000 AND 2005
WHILE @@FETCH_STATUS = 0
[tips]T_SQL @ 2000 AND 2005
[tips]T_SQL @ 2000 AND 2005
BEGIN 
[tips]T_SQL @ 2000 AND 2005    
PRINT CONVERT(VARCHAR(20), @tmopEmployeeID+''+ @LastName + '.'+ @FirstName
[tips]T_SQL @ 2000 AND 2005    
FETCH NEXT FROM custom_cursor INTO @tmopEmployeeID , @LastName@FirstName
[tips]T_SQL @ 2000 AND 2005
END
[tips]T_SQL @ 2000 AND 2005
[tips]T_SQL @ 2000 AND 2005
--DELETE THE CURSOR
[tips]T_SQL @ 2000 AND 2005
DEALLOCATE custom_cursor

 

[tips]T_SQL @ 2000 AND 2005--查询某一个库的所有存贮过程
[tips]T_SQL @ 2000 AND 2005
select * from sysobjects where type='P'     这是查出所有存储过程的名称等信息 
[tips]T_SQL @ 2000 AND 2005sp_helptext 
[存储过程名]                            可以看到存储过程定义语句 
[tips]T_SQL @ 2000 AND 2005
select * from sysobjects where type='V'     这是查出所有视图的名称等信息 取出某个视图的生成该视图的SQL语句 

 

[tips]T_SQL @ 2000 AND 2005--链接服务器,用于不同种类或者服务器之间操作数据
[tips]T_SQL @ 2000 AND 2005
Use DBNAME
[tips]T_SQL @ 2000 AND 2005
GO 
[tips]T_SQL @ 2000 AND 2005
--add link server--
[tips]T_SQL @ 2000 AND 2005
Exec sp_addlinkedserver @server = 'linkedservername'@srvproduct=N'SQL Server' 
[tips]T_SQL @ 2000 AND 2005
GO 
[tips]T_SQL @ 2000 AND 2005
-- list linked server--
[tips]T_SQL @ 2000 AND 2005
Exec sp_linkedservers 
[tips]T_SQL @ 2000 AND 2005
Go 
[tips]T_SQL @ 2000 AND 2005
--delete data before insert
[tips]T_SQL @ 2000 AND 2005
delete from tablename
[tips]T_SQL @ 2000 AND 2005
GO 
[tips]T_SQL @ 2000 AND 2005
-- insert data to the table
[tips]T_SQL @ 2000 AND 2005
insert tablename select distinct * from linkedservername.DBNAME.dbo.tablename
[tips]T_SQL @ 2000 AND 2005
GO 
[tips]T_SQL @ 2000 AND 2005
-- delete the linked server--
[tips]T_SQL @ 2000 AND 2005
Exec sp_dropserver 'hkhkpapt01' 


when insert data, if you can't do successfully, pls note IDENTITY, change the column not as IDENTITY first, after finished to insert, change back

 

 

---处理sql for xml时的控制问题

当我们把查询结果作为xml输出的时候,如果有值为空值,应该怎么办呢?

 

 

 xml auto, elements xsinil

 

 

--pivot

 

 C

 

 

如果还想获取更详细的信息,可以添加 type,或者xmlschema参数,获取更为详细的信息

 

 

 

---index: view the internal and external index fragmentation, and then rebuild or reorganize the index

 

rebuild

 

 

不使用游标更新数据表的思路是

1 移动当前表的数据到临时表

2 根据条件获取需要更新的数据

3 一个select,结合1和2,然后insert到目标表中去

ok

--------2009华丽分割线---- 

如果你更改多SQL server的名字,那么在有的时候,会出现14262的错误,比如在操作ship log的时候。

查看sql server的名字和现在你的服务器的名字是否一致

select * from sys.sysservers

如果不一致,执行下面两个存储过程,然后重启Windows

sp_dropserver 'servername'

go

sp_addserver 'servername'

 

ok, 问题搞定

 

对于上面这个问题的进一步更新

SELECT @@SERVERNAME

USE master
GO

--Drop old server name
EXEC sp_dropserver 'currentservername'
GO

--Add correct/ current server name
EXEC sp_addserver 'newservername', 'local'
GO

--restart the sql server service

SELECT @@SERVERNAME

 

 

相关文章:

  • 2021-11-14
  • 2022-03-01
  • 2022-12-23
  • 2022-12-23
  • 2021-08-22
  • 2022-12-23
  • 2022-02-09
  • 2021-07-28
猜你喜欢
  • 2021-10-24
  • 2022-01-18
  • 2022-12-23
  • 2021-09-27
  • 2022-12-23
  • 2021-09-15
  • 2021-11-29
相关资源
相似解决方案