RAPPEL PROCEDURE STOCK ET AUTOINCREMENTATION

TOUFIKDEV Messages postés 1 Date d'inscription jeudi 15 mars 2012 Statut Membre Dernière intervention 15 mars 2012 - 15 mars 2012 à 11:27
tri_yann Messages postés 124 Date d'inscription mercredi 23 novembre 2005 Statut Membre Dernière intervention 19 septembre 2013 - 15 avril 2012 à 21:26
Bonjour,

j'ai des lignes sur un fichier .txt "Classeur1.txt" a transférer vers une table "@TABLE1" de ma base "BDD"
Donc la Bulk insert et la solution pour tous transfert

BULK insert [BDD].[dbo].[TABLE1]
FROM 'C:\test\Classeur1.txt'
WITH (FIELDTERMINATOR ';', ROWTERMINATOR '\n')
go

mais le problème c'est que j'ai une procédure stockée qui auto-incrémente la CLE PRIMAIRE dans la table "TABLE1" a travers un enregistrement de la valeur de la CLE PRIMAIRE dans une table des clé SYS_DB_MASTERKEY

Sachant que je veux faire un transfert de plusieurs ligne depuis mon fichier texte es ce que c'est possible et que doit-je faire

Cordialement

1 réponse

tri_yann Messages postés 124 Date d'inscription mercredi 23 novembre 2005 Statut Membre Dernière intervention 19 septembre 2013 3
15 avril 2012 à 21:26
Bonjour, Si j'ai bien compris, il n'y a pas de champs identity ou auto-increment dans la table1, mais il y a une clé primaire.

Pourquoi ne pas charger le contenu du fichier texte dans une table temporaire ?
Select Identity(int, 1000, 1) as Cle, *
INTO #Tmp
FROM 'C:\test\Classeur1.txt' 
WITH (FIELDTERMINATOR ';', ROWTERMINATOR '\n') 

La valeur 1000 est un exemple, la valeur à utiliser est celle du début de l'incrémentation.
Puis insérer les enregistrements de #Tmp dans la table1

Yann
0
Rejoignez-nous