|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
![]() ![]() Clément Architecte Logiciel Inscription : avril 2008 Messages : 1 357 ![]() |
Bonjour !
Je viens vers vours car une quesiton me turlupine, et je ne trouve pas la réponse sur le net... La version courte : J'utilise SQLServer 2008, et j'utilise SSMS pour faire des exports de données. Pas de soucis, en configurant l'export, j'exporte bien les données, les tables si besoin etc... sauf que, ça m'exporte également l'ID de la table, qui est un auto-incrémente. Exemple : Code T-SQL :
Or, le but de cet export est de pouvoir importer dans une base (similaire) qui a des données potentiellement différentes. Je veux donc pouvoir utiliser l'auto-incrémente de la base cible. Pour cela, il faudrait que mon export ressemble à ça : Code T-SQL :
Et malheureusement, je ne vois pas comment paramétrer SSMS pour arriver à ce résultat. Est-ce possible en ligne de commande ? Est-ce tout bêtement impossible ? Merci d'avance !
__________________
One minute was enough, Tyler said, a person had to work hard for it, but a minute of perfection was worth the effort. A moment was the most you could ever expect from perfection. -- Chuck Palahniuk, Fight Club, Chapter 3 -- |
||||
|
|
00
|
|
|
#2 | ||
|
Membre Expert
![]() ![]() |
As-tu essayer ceci ?
Code :
|
||
|
00
|
|
|
#3 |
![]() ![]() Clément Architecte Logiciel Inscription : avril 2008 Messages : 1 357 ![]() |
On passe par un export/import car on n'a pas de connexion possible entre les deux bases (sinon on pourrait faire un export directement, auquel cas on peut paramétrer l'auto-incrémente).
En gros, l'une est dans le "bac à sable", l'autre est sur un serveur avec accès limité, et pas dans le même pays, zone de sécurité différente, etc.. Du coup je ne pourrais pas utiliser cette méthode non plus. Merci quand même, car je ne connaissais pas, ça me servira sûrement un jour !
__________________
One minute was enough, Tyler said, a person had to work hard for it, but a minute of perfection was worth the effort. A moment was the most you could ever expect from perfection. -- Chuck Palahniuk, Fight Club, Chapter 3 -- |
|
|
00
|
|
|
#4 |
![]() ![]() Administrateur de base de données Inscription : août 2007 Messages : 1 159 ![]() |
Une approche possible:
Chargez votre fichier dans une table temporaire localisee sur votre serveur/DB de destination et realisez un insert dans votre table finale comme decrit par zinzineti. |
|
|
00
|
|
|
#5 |
![]() ![]() ![]() Frédéric BROUARDExpert SGBDR & SQL Inscription : mai 2002 Messages : 10 959 ![]() |
Si votre table destination possède aussi un auto incrément, il n'y aura aucun problème lors de l'intégration des données. L'auto incrément est ignoré par les commandes BCP.exe et par BULK INSERT, à moins que vous ne spécifiez explicitement KEEP IDENTITY.
A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/ Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp. Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * * |
|
00
|
|
|
#6 | ||||
![]() ![]() Clément Architecte Logiciel Inscription : avril 2008 Messages : 1 357 ![]() |
Citation:
Citation:
Pour info, mes commandes : Code :
bcp base.schema.SSA_TABLE out C:\Temp\test.dat -N -UuserName -S SERVER\INSTANCE Code T-SQL :
Merci à vous !
__________________
One minute was enough, Tyler said, a person had to work hard for it, but a minute of perfection was worth the effort. A moment was the most you could ever expect from perfection. -- Chuck Palahniuk, Fight Club, Chapter 3 -- |
||||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com