Sql Server 2005 Migrare dati su tabelle diverse

mercoledì 17 marzo 2010 - 16.50

stuzzo Profilo | Junior Member

Salve a tutti!
Vorrei chiedervi un aiuto in merito alla migrazione dati.
Vi spiego...Avrei bisogno di una procedura automatizzata, che provveda a prendere i dati dal database che è attualmente in produzione e allineare quelli che ho su un db di test. Il problema sorge dal fatto che le tabelle non sono le stesse, perchè nel db di test la rappresentazione dei dati è effettuata in maniera differente.
Quindi non solo dovrei creare una procedura automatizzata, ma anche creare una mappatura tra i dati nei due db, in grado di modificare i dati se già presenti oppure inserirne di nuovi.
Ovviamente il tutto si può fare creando degli script, ma credo che impiegherò svariati mesi a fare una cosa del genere.....
Ho visto un po' gli strumenti nel Business Intelligence Development Studio, sono riuscito a creare una mappatura, ma non so proprio come fare per creare una procedura.

Qualcuno mi potrebbe dare qualche dritta?

Vi ringrazio a tutti anticipatamente!

Ciao
Alfredo Aiello

carloalberto Profilo | Junior Member

ciao,
tra qualche giorno dovrò fare una cosa del genere pure io..
il mio punto di partenza per crearmi una procedura che fara tutto sono queste viste:

---X VISTE
select * from INFORMATION_SCHEMA.VIEWS where VIEW_DEFINITION LIKE '%010000%'
---FUNZIONI E PROCEDURE
SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_DEFINITION LIKE '%010000%'
--TRIGGER
SELECT * FROM sys.triggers WHERE upper(name) like '%CAT%'
-----tutto
SELECT type_desc,name,definition,* FROM sys.all_sql_modules,sys.all_objects WHERE sys.all_sql_modules.object_id=sys.all_objects.object_id
and definition LIKE '%010000%'
order by sys.all_objects.type_desc

--select * from sys.all_objects

---FUNZIONI E PROCEDURE
SELECT ROUTINE_DEFINITION FROM INFORMATION_SCHEMA.ROUTINES
WHERE ROUTINE_DEFINITION Like '%010000%'

ho un db di confronto e quindi riportero in produzione quanto di diverso....
tu dovrai farti una sorta di db di conversione ... è poco ma spero ti possa essere di spunto... se aspetti qualche giorno avrò sicuramente qualche elemto in più :-)

stuzzo Profilo | Junior Member

Wow, grazie innanzitutto!!!!
Comincio a vedermi quello che mi hai postato, perchè francamente io non ci avrei mai pensato.....sono un po' inesperto per operazioni un po' fuori dal normale in SQL SERVER e sicuramente mi farà piacere se mi terrai aggiornato a riguardo.
Intanto ti chiedo....ma mettere come condizione il LIKE '%010000%' cosa significa? che cosa si va a recuperare nello specifico?

Ciao!

Alfredo Aiello

carloalberto Profilo | Junior Member


>Intanto ti chiedo....ma mettere come condizione il LIKE '%010000%'
>cosa significa? che cosa si va a recuperare nello specifico?
>
è una stringa che era all'interno dello script create della vista (o tabella o ecc ), nello specifico un codice articolo scolpito all'interno delle viste, dovevamo trovare tutte le viste per toglierlo.
ciao


Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5