je rencontre une difficulté dans un bloc BULK INSERT.
Le ficheir source (fichier texte) que je dois aller chercher est à un
emplacement que je dois rendre paramétrable. Je veux donc passer ce chemin
dans une variable (varChemin) suivi du nom du fichier ('NomFic.txt')...
Je ne dois pas utiliser la bonne syntaxe :
BULK INSERT Table1
FROM varChemin + 'NomFic.txt'
WITH
(
FIELDTERMINATOR = ',',
KEEPIDENTITY
)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Fred BROUARD
JIELPE53 a écrit :
Re-Bonjour à tous,
je rencontre une difficulté dans un bloc BULK INSERT.
Le ficheir source (fichier texte) que je dois aller chercher est à un emplacement que je dois rendre paramétrable. Je veux donc passer ce chemin dans une variable (varChemin) suivi du nom du fichier ('NomFic.txt')...
Je ne dois pas utiliser la bonne syntaxe :
BULK INSERT Table1 FROM varChemin + 'NomFic.txt' WITH ( FIELDTERMINATOR = ',', KEEPIDENTITY )
Quelqu'un peut-il m'aider ?
Merci.
La commande BULK INSERT n'admet pas de variable pour la définition du path. Optez pour du SQL dynamique.
DECLARE @SQL VARCHAR(8000)
SET @SQL = 'BULK INSERT Table1 FROM ''' + @varChemin + 'NomFic.txt''' + ' WITH (FIELDTERMINATOR = '','', KEEPIDENTITY )'
EXEC (@SQL)
A +
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
JIELPE53 a écrit :
Re-Bonjour à tous,
je rencontre une difficulté dans un bloc BULK INSERT.
Le ficheir source (fichier texte) que je dois aller chercher est à un
emplacement que je dois rendre paramétrable. Je veux donc passer ce chemin
dans une variable (varChemin) suivi du nom du fichier ('NomFic.txt')...
Je ne dois pas utiliser la bonne syntaxe :
BULK INSERT Table1
FROM varChemin + 'NomFic.txt'
WITH
(
FIELDTERMINATOR = ',',
KEEPIDENTITY
)
Quelqu'un peut-il m'aider ?
Merci.
La commande BULK INSERT n'admet pas de variable pour la définition du path.
Optez pour du SQL dynamique.
DECLARE @SQL VARCHAR(8000)
SET @SQL = 'BULK INSERT Table1 FROM ''' + @varChemin + 'NomFic.txt'''
+ ' WITH (FIELDTERMINATOR = '','', KEEPIDENTITY )'
EXEC (@SQL)
A +
--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************
je rencontre une difficulté dans un bloc BULK INSERT.
Le ficheir source (fichier texte) que je dois aller chercher est à un emplacement que je dois rendre paramétrable. Je veux donc passer ce chemin dans une variable (varChemin) suivi du nom du fichier ('NomFic.txt')...
Je ne dois pas utiliser la bonne syntaxe :
BULK INSERT Table1 FROM varChemin + 'NomFic.txt' WITH ( FIELDTERMINATOR = ',', KEEPIDENTITY )
Quelqu'un peut-il m'aider ?
Merci.
La commande BULK INSERT n'admet pas de variable pour la définition du path. Optez pour du SQL dynamique.
DECLARE @SQL VARCHAR(8000)
SET @SQL = 'BULK INSERT Table1 FROM ''' + @varChemin + 'NomFic.txt''' + ' WITH (FIELDTERMINATOR = '','', KEEPIDENTITY )'
EXEC (@SQL)
A +
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
JIELPE53
Un grand merci Monsieur le Spécialiste...
ça fonctionne du premier coup !!!
"Fred BROUARD" a écrit :
JIELPE53 a écrit : > Re-Bonjour à tous, > > je rencontre une difficulté dans un bloc BULK INSERT. > > Le ficheir source (fichier texte) que je dois aller chercher est à un > emplacement que je dois rendre paramétrable. Je veux donc passer ce chemin > dans une variable (varChemin) suivi du nom du fichier ('NomFic.txt')... > > Je ne dois pas utiliser la bonne syntaxe : > > BULK INSERT Table1 > FROM varChemin + 'NomFic.txt' > WITH > ( > FIELDTERMINATOR = ',', > KEEPIDENTITY > ) > > Quelqu'un peut-il m'aider ? > > Merci.
La commande BULK INSERT n'admet pas de variable pour la définition du path. Optez pour du SQL dynamique.
DECLARE @SQL VARCHAR(8000)
SET @SQL = 'BULK INSERT Table1 FROM ''' + @varChemin + 'NomFic.txt''' + ' WITH (FIELDTERMINATOR = '','', KEEPIDENTITY )'
EXEC (@SQL)
A +
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
Un grand merci Monsieur le Spécialiste...
ça fonctionne du premier coup !!!
"Fred BROUARD" a écrit :
JIELPE53 a écrit :
> Re-Bonjour à tous,
>
> je rencontre une difficulté dans un bloc BULK INSERT.
>
> Le ficheir source (fichier texte) que je dois aller chercher est à un
> emplacement que je dois rendre paramétrable. Je veux donc passer ce chemin
> dans une variable (varChemin) suivi du nom du fichier ('NomFic.txt')...
>
> Je ne dois pas utiliser la bonne syntaxe :
>
> BULK INSERT Table1
> FROM varChemin + 'NomFic.txt'
> WITH
> (
> FIELDTERMINATOR = ',',
> KEEPIDENTITY
> )
>
> Quelqu'un peut-il m'aider ?
>
> Merci.
La commande BULK INSERT n'admet pas de variable pour la définition du path.
Optez pour du SQL dynamique.
DECLARE @SQL VARCHAR(8000)
SET @SQL = 'BULK INSERT Table1 FROM ''' + @varChemin + 'NomFic.txt'''
+ ' WITH (FIELDTERMINATOR = '','', KEEPIDENTITY )'
EXEC (@SQL)
A +
--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************
JIELPE53 a écrit : > Re-Bonjour à tous, > > je rencontre une difficulté dans un bloc BULK INSERT. > > Le ficheir source (fichier texte) que je dois aller chercher est à un > emplacement que je dois rendre paramétrable. Je veux donc passer ce chemin > dans une variable (varChemin) suivi du nom du fichier ('NomFic.txt')... > > Je ne dois pas utiliser la bonne syntaxe : > > BULK INSERT Table1 > FROM varChemin + 'NomFic.txt' > WITH > ( > FIELDTERMINATOR = ',', > KEEPIDENTITY > ) > > Quelqu'un peut-il m'aider ? > > Merci.
La commande BULK INSERT n'admet pas de variable pour la définition du path. Optez pour du SQL dynamique.
DECLARE @SQL VARCHAR(8000)
SET @SQL = 'BULK INSERT Table1 FROM ''' + @varChemin + 'NomFic.txt''' + ' WITH (FIELDTERMINATOR = '','', KEEPIDENTITY )'
EXEC (@SQL)
A +
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************