Sql server 当然,可以用C#做一个测试。似乎应该有一种方法在SQL中实现这一点。这很好。我还没有试过,但我一直在仔细考虑,似乎这个方法可以满足我需要做的一切。谢谢,效果很好。移动了我需要的数据。要正确转换所有列值,需要对数据库的本地副本进行多次迭代。但在目标数据库中添
Sql server 当然,可以用C#做一个测试。似乎应该有一种方法在SQL中实现这一点。这很好。我还没有试过,但我一直在仔细考虑,似乎这个方法可以满足我需要做的一切。谢谢,效果很好。移动了我需要的数据。要正确转换所有列值,需要对数据库的本地副本进行多次迭代。但在目标数据库中添,sql-server,Sql Server,当然,可以用C#做一个测试。似乎应该有一种方法在SQL中实现这一点。这很好。我还没有试过,但我一直在仔细考虑,似乎这个方法可以满足我需要做的一切。谢谢,效果很好。移动了我需要的数据。要正确转换所有列值,需要对数据库的本地副本进行多次迭代。但在目标数据库中添加列的基本技术是关键。再次感谢。这很好。我还没有试过,但我一直在仔细考虑,似乎这个方法可以满足我需要做的一切。谢谢,效果很好。移动了我需要的数据。要正确转换所有列值,需要对数据库的本地副本进行多次迭代。但在目标数据库中添加列的基本技术是关键。再
当然,可以用C#做一个测试。似乎应该有一种方法在SQL中实现这一点。这很好。我还没有试过,但我一直在仔细考虑,似乎这个方法可以满足我需要做的一切。谢谢,效果很好。移动了我需要的数据。要正确转换所有列值,需要对数据库的本地副本进行多次迭代。但在目标数据库中添加列的基本技术是关键。再次感谢。这很好。我还没有试过,但我一直在仔细考虑,似乎这个方法可以满足我需要做的一切。谢谢,效果很好。移动了我需要的数据。要正确转换所有列值,需要对数据库的本地副本进行多次迭代。但在目标数据库中添加列的基本技术是关键。再次感谢。
INSERT INTO NewDB.schema.TableName (newCol1, newCol2, ... ,newColN)
SELECT oldCol1, oldCol2, ... , oldColN
FROM OldDB.schema.TableName
use phdb
declare @GroupId int
declare @UserId int
declare @ClientId char( 11 )
select @ClientId = min( ID ) from mcndb.dbo.tClient where IsPerson=0
while @ClientId is not null
begin
-- Old.Family becomes New.Group
insert into Groups (GroupName, GroupKind)
select (fname + ' ' + lname) as GroupName, 'Family'
from mcndb.dbo.tClient where ID = @ClientId
set @GroupId = SCOPE_IDENTITY()
-- Map fid to GroupId for later use
insert into mcndb.dbo.fidToGroupId (fid, GroupId)
values (@ClientId, @GroupId)
-- Create a user for parent of the family group
insert into Users (FirstName, LastName, IsFemale, DoB, ProviderUserKey)
select fname, lname, 0, '1977-07-07', '00000000-0000-0000-0000-000000000000'
from mcndb.dbo.tClient where ID = @ClientId
set @UserId = SCOPE_IDENTITY()
-- Connect the parent into the group
insert into UsersInGroups (Group_ID, [User_ID], [Role])
values (@GroupId, @UserId, 'PayingParent')
-- Next row
select @ClientId = min( id ) from mcndb.dbo.tClient
where ID > @ClientId and IsPerson = 0
end
CREATE TABLE db1.dbo.Parent
(
Id int identity,
description varchar(max),
PRIMARY KEY(Id)
)
CREATE TABLE db1.dbo.Child
(
Id int identity,
ParentId int NOT NULL,
SomeChar char(1),
PRIMARY KEY(Id),
FOREIGN KEY(ParentId) REFERENCES db1.dbo.Parent(Id)
)
CREATE TABLE db2.dbo.Parent
(
Id int identity,
description varchar(max),
PRIMARY KEY(Id)
)
CREATE TABLE db2.dbo.Child
(
Id int identity,
ParentId int NOT NULL,
SomeChar char(1),
PRIMARY KEY(Id),
FOREIGN KEY(ParentId) REFERENCES db2.dbo.Parent(Id)
)
ALTER TABLE db2.dbo.Parent ADD IDMap INT
--might consider adding an index for performance, might help, might hurt.
GO
INSERT INTO db2.dbo.Parent (description, IDMap)
SELECT description, Id FROM db1.dbo.Parent
INSERT INTO db2.dbo.Child (ParentId, SomeChar)
SELECT db2.dbo.Parent.Id, db1.dbo.Child.SomeChar
FROM db1.dbo.Child
INNER JOIN db2.dbo.Parent ON db2.dbo.Parent.IDMap = db1.dbo.Child.ParentId