新しいデータベース構造に変換しようとしている古いデータベースがありますが、続行する前に、何か最良の方法があるかどうかを知りたいと思います。 私はCursorを使用しようとしましたが、時間がかかります。私は古いデータベースから新しいデータベースに移行するために合計13のテーブルを持っています。別の構造を持つ古いデータベースを新しいデータベースに移行する最も良い方法
DECLARE @GGroupId as Int;
DECLARE @GName as NVARCHAR(MAX);
DECLARE @GDescription as NVARCHAR(MAX);
DECLARE @GLastModification as DateTime;
DECLARE @GLastUser as NVARCHAR(MAX);
DECLARE @Prio as int;
DECLARE @NEW_GROUP_ID as int;
DECLARE @PProupId as Int;
DECLARE @PName as NVARCHAR(MAX);
DECLARE @PDescription as NVARCHAR(MAX);
DECLARE @PLastModification as DateTime;
DECLARE @PLastUser as NVARCHAR(MAX);
DECLARE Group_Cursor CURSOR FOR
SELECT Ord_Id, Bezeich,Notiz, Prio
FROM [MigrationAPlanDB].[dbo].[Ordner];
OPEN Group_Cursor
FETCH NEXT FROM Group_Cursor INTO @GGroupId, @GName, @GDescription, @Prio;
WHILE @@FETCH_STATUS = 0
BEGIN
DECLARE @USERID as int;
/*SELECT U.Id from [MigrationAPlanDB].[dbo].User_Names as U where U.User = @GLastUser INTO @USERID;*/
INSERT INTO [ProjectManagement].[dbo].[Groups] (Name, Description, Priority ,CreatorId, InsertDate, IsDeleted)
VALUES (@GName, cast(@GDescription as ntext), @Prio, 1, GETDATE(), 0)
SET @NEW_GROUP_ID = SCOPE_IDENTITY()
DECLARE Project_Cursor CURSOR FOR
SELECT Pro_ID,Bezeich, Notiz, LastModification, LastUser FROM [MigrationAPlanDB].[dbo].[Projekte] WHERE Ord_Id = @GGroupId;
OPEN Project_Cursor;
FETCH NEXT FROM Project_Cursor INTO @PProupId, @PName, @PDescription, @PLastModification, @PLastUser;
WHILE @@FETCH_STATUS = 0
BEGIN
INSERT INTO [ProjectManagement].[dbo].[Projects] (Name, Description,UpdateDate
,CreatorId, InsertDate) VALUES (@PName, @PDescription, @PLastModification, 1, GETDATE());
/*SELECT SCOPE_IDENTITY() INTO @NEW_PROJECT_ID;*/
END;
CLOSE Project_Cursor
DEALLOCATE Project_Cursor
END;
CLOSE Group_Cursor
DEALLOCATE Group_Cursor
GO
データベース名を教えてもらえますか? PostgreSQLから別のPostgreSQLインスタンス/バージョンへ、あるいは異なるベンダーの製品Aから製品Bへと言いますか?その詳細は、「カーソルを使用しようとしましたが、時間がかかります」というステートメントのように、パフォーマンスには役立ちます。ありがとう。 – Dilettant
私のデータベース名はProjectsManagementで、SQL Serverにあり、古いデータベースを新しい構造の新しいデータベースに変換したいのですが、どのような詳細情報を提供すればいいですか?移行するレコード。 –
SQL Serverは私が疑問に思っていた情報でした。またはタグとして;-)ありがとうございました。 – Dilettant