Bonjour,
J'ai un bout de code en VB qui me donne la liste des fichiers
présents dans un dossier spécifique.
Je souhaite récupérer ces noms de fichiers comme variables globales
dans un lot DTS ou insérer ces noms de fichiers dans une table d'une
base SQL Server. Voici mon code actuel :
Bonjour,
J'ai un bout de code en VB qui me donne la liste des fichiers
présents dans un dossier spécifique.
Je souhaite récupérer ces noms de fichiers comme variables globales
dans un lot DTS ou insérer ces noms de fichiers dans une table d'une
base SQL Server. Voici mon code actuel :
Bonjour,
J'ai un bout de code en VB qui me donne la liste des fichiers
présents dans un dossier spécifique.
Je souhaite récupérer ces noms de fichiers comme variables globales
dans un lot DTS ou insérer ces noms de fichiers dans une table d'une
base SQL Server. Voici mon code actuel :
dans : news:,
Christianbt écrivait :Bonjour,
Bonjour,J'ai un bout de code en VB qui me donne la liste des fichiers
présents dans un dossier spécifique.
Je souhaite récupérer ces noms de fichiers comme variables globales
dans un lot DTS ou insérer ces noms de fichiers dans une table d'une
base SQL Server. Voici mon code actuel :
Une solution pour mettre les noms de fichier dans une table avec ActiveX
Data Objects
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
Set cn = CreateObject("ADODB.Connection")
Set cmd = CreateObject("ADODB.Command")
cn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
cn.Open
cmd.CommandText = "INSERT INTO FILES VALUES(?)"
cmd.CommandType = adCmdText
cmd.Parameters.Append cmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, fri.Name)
Set cmd.ActiveConnection = cn
cmd.Execute
cn.Close
À intégrer dans ton code.
Remarques :
Data Source est de la forme [nom ou ip du serveur][nom de l'instance]
Si la sécurité est en mode SQL, utiliser :
Provider=sqloledb;Data Source=Aron1;Initial Catalog=pubs;User
Id=sa;Password=asdasd
voir ici pour plus de détails : http://www.connectionstrings.com/
Je suppose qu'il y a une base nommée "dataBase"
une table nommée "FILES"
avec une seule colonne de type nvarchar nommée "FileName"
--
Fred
http://www.cerbermail.com/?3kA6ftaCvT
dans : news:C4E83652-317D-4613-ABCD-F6140AA75370@microsoft.com,
Christianbt écrivait :
Bonjour,
Bonjour,
J'ai un bout de code en VB qui me donne la liste des fichiers
présents dans un dossier spécifique.
Je souhaite récupérer ces noms de fichiers comme variables globales
dans un lot DTS ou insérer ces noms de fichiers dans une table d'une
base SQL Server. Voici mon code actuel :
Une solution pour mettre les noms de fichier dans une table avec ActiveX
Data Objects
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
Set cn = CreateObject("ADODB.Connection")
Set cmd = CreateObject("ADODB.Command")
cn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
cn.Open
cmd.CommandText = "INSERT INTO FILES VALUES(?)"
cmd.CommandType = adCmdText
cmd.Parameters.Append cmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, fri.Name)
Set cmd.ActiveConnection = cn
cmd.Execute
cn.Close
À intégrer dans ton code.
Remarques :
Data Source est de la forme [nom ou ip du serveur][nom de l'instance]
Si la sécurité est en mode SQL, utiliser :
Provider=sqloledb;Data Source=Aron1;Initial Catalog=pubs;User
Id=sa;Password=asdasd
voir ici pour plus de détails : http://www.connectionstrings.com/
Je suppose qu'il y a une base nommée "dataBase"
une table nommée "FILES"
avec une seule colonne de type nvarchar nommée "FileName"
--
Fred
http://www.cerbermail.com/?3kA6ftaCvT
dans : news:,
Christianbt écrivait :Bonjour,
Bonjour,J'ai un bout de code en VB qui me donne la liste des fichiers
présents dans un dossier spécifique.
Je souhaite récupérer ces noms de fichiers comme variables globales
dans un lot DTS ou insérer ces noms de fichiers dans une table d'une
base SQL Server. Voici mon code actuel :
Une solution pour mettre les noms de fichier dans une table avec ActiveX
Data Objects
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
Set cn = CreateObject("ADODB.Connection")
Set cmd = CreateObject("ADODB.Command")
cn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
cn.Open
cmd.CommandText = "INSERT INTO FILES VALUES(?)"
cmd.CommandType = adCmdText
cmd.Parameters.Append cmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, fri.Name)
Set cmd.ActiveConnection = cn
cmd.Execute
cn.Close
À intégrer dans ton code.
Remarques :
Data Source est de la forme [nom ou ip du serveur][nom de l'instance]
Si la sécurité est en mode SQL, utiliser :
Provider=sqloledb;Data Source=Aron1;Initial Catalog=pubs;User
Id=sa;Password=asdasd
voir ici pour plus de détails : http://www.connectionstrings.com/
Je suppose qu'il y a une base nommée "dataBase"
une table nommée "FILES"
avec une seule colonne de type nvarchar nommée "FileName"
--
Fred
http://www.cerbermail.com/?3kA6ftaCvT
Bonjour,
Si tu le permets Fred, je commente ton code afin qu'il soit compréhensible
pour un néophyte.
' Déclaration des constantes propres à ADO
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
' Déclaration des variables
Dim objfso, objfolder, objfile
Dim objcnn, objcmd
' Objet connexion à la base de données
Set objcnn = CreateObject("ADODB.Connection")
' Chaine de connexion à la base de données
objcnn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
' Gestion d'erreur
on error resume next
objcnn.Open
if err.number <> 0 then
wscript.echo "Erreur d'accès à la base" & vbcrlf & err.description
wscript.quit
end if
' Objet command permettant d'effectuer une requete action sur la base
Set objcmd = CreateObject("ADODB.Command")
' Définition de la requete. Le ? indique un paramêtre
objcmd.CommandText = "INSERT INTO FILES VALUES(?)"
' Définition du type de commande (requete text, nom de table, procédure
stockée...)
objcmd.CommandType = adCmdText
' Défiinition de la connexion active
Set objcmd.ActiveConnection = objcnn
' Création du paramêtre de la requete
objcmd.Parameters.Append objcmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, null)
' Parcours des fichiers du répertoire
set objfso = createobject("scripting.filesystemobject")
set objfolder = objfso.getfolder("mondossier")
For Each objfile in objfolder.files
cmd.parameters(0).value = objfile.name
cmd.Execute
Next
objcnn.Close
set objcmd = nothing
set objcnn = nothing
set objfile = nothing
set objfolder = nothing
set objfso = nothing
----------------------------------
martial collinet
http://martialcollinet.free.fr
----------------------------------dans : news:,
Christianbt écrivait :Bonjour,
Bonjour,J'ai un bout de code en VB qui me donne la liste des fichiers
présents dans un dossier spécifique.
Je souhaite récupérer ces noms de fichiers comme variables globales
dans un lot DTS ou insérer ces noms de fichiers dans une table d'une
base SQL Server. Voici mon code actuel :
Une solution pour mettre les noms de fichier dans une table avec ActiveX
Data Objects
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
Set cn = CreateObject("ADODB.Connection")
Set cmd = CreateObject("ADODB.Command")
cn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
cn.Open
cmd.CommandText = "INSERT INTO FILES VALUES(?)"
cmd.CommandType = adCmdText
cmd.Parameters.Append cmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, fri.Name)
Set cmd.ActiveConnection = cn
cmd.Execute
cn.Close
À intégrer dans ton code.
Remarques :
Data Source est de la forme [nom ou ip du serveur][nom de l'instance]
Si la sécurité est en mode SQL, utiliser :
Provider=sqloledb;Data Source=Aron1;Initial Catalog=pubs;User
Id=sa;Password=asdasd
voir ici pour plus de détails : http://www.connectionstrings.com/
Je suppose qu'il y a une base nommée "dataBase"
une table nommée "FILES"
avec une seule colonne de type nvarchar nommée "FileName"
--
Fred
http://www.cerbermail.com/?3kA6ftaCvT
Bonjour,
Si tu le permets Fred, je commente ton code afin qu'il soit compréhensible
pour un néophyte.
' Déclaration des constantes propres à ADO
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
' Déclaration des variables
Dim objfso, objfolder, objfile
Dim objcnn, objcmd
' Objet connexion à la base de données
Set objcnn = CreateObject("ADODB.Connection")
' Chaine de connexion à la base de données
objcnn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
' Gestion d'erreur
on error resume next
objcnn.Open
if err.number <> 0 then
wscript.echo "Erreur d'accès à la base" & vbcrlf & err.description
wscript.quit
end if
' Objet command permettant d'effectuer une requete action sur la base
Set objcmd = CreateObject("ADODB.Command")
' Définition de la requete. Le ? indique un paramêtre
objcmd.CommandText = "INSERT INTO FILES VALUES(?)"
' Définition du type de commande (requete text, nom de table, procédure
stockée...)
objcmd.CommandType = adCmdText
' Défiinition de la connexion active
Set objcmd.ActiveConnection = objcnn
' Création du paramêtre de la requete
objcmd.Parameters.Append objcmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, null)
' Parcours des fichiers du répertoire
set objfso = createobject("scripting.filesystemobject")
set objfolder = objfso.getfolder("mondossier")
For Each objfile in objfolder.files
cmd.parameters(0).value = objfile.name
cmd.Execute
Next
objcnn.Close
set objcmd = nothing
set objcnn = nothing
set objfile = nothing
set objfolder = nothing
set objfso = nothing
----------------------------------
martial collinet
http://martialcollinet.free.fr
----------------------------------
dans : news:C4E83652-317D-4613-ABCD-F6140AA75370@microsoft.com,
Christianbt écrivait :
Bonjour,
Bonjour,
J'ai un bout de code en VB qui me donne la liste des fichiers
présents dans un dossier spécifique.
Je souhaite récupérer ces noms de fichiers comme variables globales
dans un lot DTS ou insérer ces noms de fichiers dans une table d'une
base SQL Server. Voici mon code actuel :
Une solution pour mettre les noms de fichier dans une table avec ActiveX
Data Objects
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
Set cn = CreateObject("ADODB.Connection")
Set cmd = CreateObject("ADODB.Command")
cn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
cn.Open
cmd.CommandText = "INSERT INTO FILES VALUES(?)"
cmd.CommandType = adCmdText
cmd.Parameters.Append cmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, fri.Name)
Set cmd.ActiveConnection = cn
cmd.Execute
cn.Close
À intégrer dans ton code.
Remarques :
Data Source est de la forme [nom ou ip du serveur][nom de l'instance]
Si la sécurité est en mode SQL, utiliser :
Provider=sqloledb;Data Source=Aron1;Initial Catalog=pubs;User
Id=sa;Password=asdasd
voir ici pour plus de détails : http://www.connectionstrings.com/
Je suppose qu'il y a une base nommée "dataBase"
une table nommée "FILES"
avec une seule colonne de type nvarchar nommée "FileName"
--
Fred
http://www.cerbermail.com/?3kA6ftaCvT
Bonjour,
Si tu le permets Fred, je commente ton code afin qu'il soit compréhensible
pour un néophyte.
' Déclaration des constantes propres à ADO
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
' Déclaration des variables
Dim objfso, objfolder, objfile
Dim objcnn, objcmd
' Objet connexion à la base de données
Set objcnn = CreateObject("ADODB.Connection")
' Chaine de connexion à la base de données
objcnn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
' Gestion d'erreur
on error resume next
objcnn.Open
if err.number <> 0 then
wscript.echo "Erreur d'accès à la base" & vbcrlf & err.description
wscript.quit
end if
' Objet command permettant d'effectuer une requete action sur la base
Set objcmd = CreateObject("ADODB.Command")
' Définition de la requete. Le ? indique un paramêtre
objcmd.CommandText = "INSERT INTO FILES VALUES(?)"
' Définition du type de commande (requete text, nom de table, procédure
stockée...)
objcmd.CommandType = adCmdText
' Défiinition de la connexion active
Set objcmd.ActiveConnection = objcnn
' Création du paramêtre de la requete
objcmd.Parameters.Append objcmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, null)
' Parcours des fichiers du répertoire
set objfso = createobject("scripting.filesystemobject")
set objfolder = objfso.getfolder("mondossier")
For Each objfile in objfolder.files
cmd.parameters(0).value = objfile.name
cmd.Execute
Next
objcnn.Close
set objcmd = nothing
set objcnn = nothing
set objfile = nothing
set objfolder = nothing
set objfso = nothing
----------------------------------
martial collinet
http://martialcollinet.free.fr
----------------------------------dans : news:,
Christianbt écrivait :Bonjour,
Bonjour,J'ai un bout de code en VB qui me donne la liste des fichiers
présents dans un dossier spécifique.
Je souhaite récupérer ces noms de fichiers comme variables globales
dans un lot DTS ou insérer ces noms de fichiers dans une table d'une
base SQL Server. Voici mon code actuel :
Une solution pour mettre les noms de fichier dans une table avec ActiveX
Data Objects
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
Set cn = CreateObject("ADODB.Connection")
Set cmd = CreateObject("ADODB.Command")
cn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
cn.Open
cmd.CommandText = "INSERT INTO FILES VALUES(?)"
cmd.CommandType = adCmdText
cmd.Parameters.Append cmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, fri.Name)
Set cmd.ActiveConnection = cn
cmd.Execute
cn.Close
À intégrer dans ton code.
Remarques :
Data Source est de la forme [nom ou ip du serveur][nom de l'instance]
Si la sécurité est en mode SQL, utiliser :
Provider=sqloledb;Data Source=Aron1;Initial Catalog=pubs;User
Id=sa;Password=asdasd
voir ici pour plus de détails : http://www.connectionstrings.com/
Je suppose qu'il y a une base nommée "dataBase"
une table nommée "FILES"
avec une seule colonne de type nvarchar nommée "FileName"
--
Fred
http://www.cerbermail.com/?3kA6ftaCvT
Merci à Fred et Martial,
En effet, comme je suis néophyte, toutes ces informations me seront bien
utiles. Je vais tester tout cela.
Merci pour vos réponses...
ChristianBonjour,
Si tu le permets Fred, je commente ton code afin qu'il soit compréhensible
pour un néophyte.
' Déclaration des constantes propres à ADO
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
' Déclaration des variables
Dim objfso, objfolder, objfile
Dim objcnn, objcmd
' Objet connexion à la base de données
Set objcnn = CreateObject("ADODB.Connection")
' Chaine de connexion à la base de données
objcnn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
' Gestion d'erreur
on error resume next
objcnn.Open
if err.number <> 0 then
wscript.echo "Erreur d'accès à la base" & vbcrlf & err.description
wscript.quit
end if
' Objet command permettant d'effectuer une requete action sur la base
Set objcmd = CreateObject("ADODB.Command")
' Définition de la requete. Le ? indique un paramêtre
objcmd.CommandText = "INSERT INTO FILES VALUES(?)"
' Définition du type de commande (requete text, nom de table, procédure
stockée...)
objcmd.CommandType = adCmdText
' Défiinition de la connexion active
Set objcmd.ActiveConnection = objcnn
' Création du paramêtre de la requete
objcmd.Parameters.Append objcmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, null)
' Parcours des fichiers du répertoire
set objfso = createobject("scripting.filesystemobject")
set objfolder = objfso.getfolder("mondossier")
For Each objfile in objfolder.files
cmd.parameters(0).value = objfile.name
cmd.Execute
Next
objcnn.Close
set objcmd = nothing
set objcnn = nothing
set objfile = nothing
set objfolder = nothing
set objfso = nothing
----------------------------------
martial collinet
http://martialcollinet.free.fr
----------------------------------dans : news:,
Christianbt écrivait :Bonjour,
Bonjour,J'ai un bout de code en VB qui me donne la liste des fichiers
présents dans un dossier spécifique.
Je souhaite récupérer ces noms de fichiers comme variables globales
dans un lot DTS ou insérer ces noms de fichiers dans une table d'une
base SQL Server. Voici mon code actuel :
Une solution pour mettre les noms de fichier dans une table avec ActiveX
Data Objects
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
Set cn = CreateObject("ADODB.Connection")
Set cmd = CreateObject("ADODB.Command")
cn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
cn.Open
cmd.CommandText = "INSERT INTO FILES VALUES(?)"
cmd.CommandType = adCmdText
cmd.Parameters.Append cmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, fri.Name)
Set cmd.ActiveConnection = cn
cmd.Execute
cn.Close
À intégrer dans ton code.
Remarques :
Data Source est de la forme [nom ou ip du serveur][nom de l'instance]
Si la sécurité est en mode SQL, utiliser :
Provider=sqloledb;Data Source=Aron1;Initial Catalog=pubs;User
Id=sa;Password=asdasd
voir ici pour plus de détails : http://www.connectionstrings.com/
Je suppose qu'il y a une base nommée "dataBase"
une table nommée "FILES"
avec une seule colonne de type nvarchar nommée "FileName"
--
Fred
http://www.cerbermail.com/?3kA6ftaCvT
Merci à Fred et Martial,
En effet, comme je suis néophyte, toutes ces informations me seront bien
utiles. Je vais tester tout cela.
Merci pour vos réponses...
Christian
Bonjour,
Si tu le permets Fred, je commente ton code afin qu'il soit compréhensible
pour un néophyte.
' Déclaration des constantes propres à ADO
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
' Déclaration des variables
Dim objfso, objfolder, objfile
Dim objcnn, objcmd
' Objet connexion à la base de données
Set objcnn = CreateObject("ADODB.Connection")
' Chaine de connexion à la base de données
objcnn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
' Gestion d'erreur
on error resume next
objcnn.Open
if err.number <> 0 then
wscript.echo "Erreur d'accès à la base" & vbcrlf & err.description
wscript.quit
end if
' Objet command permettant d'effectuer une requete action sur la base
Set objcmd = CreateObject("ADODB.Command")
' Définition de la requete. Le ? indique un paramêtre
objcmd.CommandText = "INSERT INTO FILES VALUES(?)"
' Définition du type de commande (requete text, nom de table, procédure
stockée...)
objcmd.CommandType = adCmdText
' Défiinition de la connexion active
Set objcmd.ActiveConnection = objcnn
' Création du paramêtre de la requete
objcmd.Parameters.Append objcmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, null)
' Parcours des fichiers du répertoire
set objfso = createobject("scripting.filesystemobject")
set objfolder = objfso.getfolder("mondossier")
For Each objfile in objfolder.files
cmd.parameters(0).value = objfile.name
cmd.Execute
Next
objcnn.Close
set objcmd = nothing
set objcnn = nothing
set objfile = nothing
set objfolder = nothing
set objfso = nothing
----------------------------------
martial collinet
http://martialcollinet.free.fr
----------------------------------
dans : news:C4E83652-317D-4613-ABCD-F6140AA75370@microsoft.com,
Christianbt écrivait :
Bonjour,
Bonjour,
J'ai un bout de code en VB qui me donne la liste des fichiers
présents dans un dossier spécifique.
Je souhaite récupérer ces noms de fichiers comme variables globales
dans un lot DTS ou insérer ces noms de fichiers dans une table d'une
base SQL Server. Voici mon code actuel :
Une solution pour mettre les noms de fichier dans une table avec ActiveX
Data Objects
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
Set cn = CreateObject("ADODB.Connection")
Set cmd = CreateObject("ADODB.Command")
cn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
cn.Open
cmd.CommandText = "INSERT INTO FILES VALUES(?)"
cmd.CommandType = adCmdText
cmd.Parameters.Append cmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, fri.Name)
Set cmd.ActiveConnection = cn
cmd.Execute
cn.Close
À intégrer dans ton code.
Remarques :
Data Source est de la forme [nom ou ip du serveur][nom de l'instance]
Si la sécurité est en mode SQL, utiliser :
Provider=sqloledb;Data Source=Aron1;Initial Catalog=pubs;User
Id=sa;Password=asdasd
voir ici pour plus de détails : http://www.connectionstrings.com/
Je suppose qu'il y a une base nommée "dataBase"
une table nommée "FILES"
avec une seule colonne de type nvarchar nommée "FileName"
--
Fred
http://www.cerbermail.com/?3kA6ftaCvT
Merci à Fred et Martial,
En effet, comme je suis néophyte, toutes ces informations me seront bien
utiles. Je vais tester tout cela.
Merci pour vos réponses...
ChristianBonjour,
Si tu le permets Fred, je commente ton code afin qu'il soit compréhensible
pour un néophyte.
' Déclaration des constantes propres à ADO
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
' Déclaration des variables
Dim objfso, objfolder, objfile
Dim objcnn, objcmd
' Objet connexion à la base de données
Set objcnn = CreateObject("ADODB.Connection")
' Chaine de connexion à la base de données
objcnn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
' Gestion d'erreur
on error resume next
objcnn.Open
if err.number <> 0 then
wscript.echo "Erreur d'accès à la base" & vbcrlf & err.description
wscript.quit
end if
' Objet command permettant d'effectuer une requete action sur la base
Set objcmd = CreateObject("ADODB.Command")
' Définition de la requete. Le ? indique un paramêtre
objcmd.CommandText = "INSERT INTO FILES VALUES(?)"
' Définition du type de commande (requete text, nom de table, procédure
stockée...)
objcmd.CommandType = adCmdText
' Défiinition de la connexion active
Set objcmd.ActiveConnection = objcnn
' Création du paramêtre de la requete
objcmd.Parameters.Append objcmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, null)
' Parcours des fichiers du répertoire
set objfso = createobject("scripting.filesystemobject")
set objfolder = objfso.getfolder("mondossier")
For Each objfile in objfolder.files
cmd.parameters(0).value = objfile.name
cmd.Execute
Next
objcnn.Close
set objcmd = nothing
set objcnn = nothing
set objfile = nothing
set objfolder = nothing
set objfso = nothing
----------------------------------
martial collinet
http://martialcollinet.free.fr
----------------------------------dans : news:,
Christianbt écrivait :Bonjour,
Bonjour,J'ai un bout de code en VB qui me donne la liste des fichiers
présents dans un dossier spécifique.
Je souhaite récupérer ces noms de fichiers comme variables globales
dans un lot DTS ou insérer ces noms de fichiers dans une table d'une
base SQL Server. Voici mon code actuel :
Une solution pour mettre les noms de fichier dans une table avec ActiveX
Data Objects
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
Set cn = CreateObject("ADODB.Connection")
Set cmd = CreateObject("ADODB.Command")
cn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
cn.Open
cmd.CommandText = "INSERT INTO FILES VALUES(?)"
cmd.CommandType = adCmdText
cmd.Parameters.Append cmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, fri.Name)
Set cmd.ActiveConnection = cn
cmd.Execute
cn.Close
À intégrer dans ton code.
Remarques :
Data Source est de la forme [nom ou ip du serveur][nom de l'instance]
Si la sécurité est en mode SQL, utiliser :
Provider=sqloledb;Data Source=Aron1;Initial Catalog=pubs;User
Id=sa;Password=asdasd
voir ici pour plus de détails : http://www.connectionstrings.com/
Je suppose qu'il y a une base nommée "dataBase"
une table nommée "FILES"
avec une seule colonne de type nvarchar nommée "FileName"
--
Fred
http://www.cerbermail.com/?3kA6ftaCvT
Re-Bonjour,
Voici finalement le code écrit, si je n'ai pas fait trop d'erreur. Mais
néanmoins je n'ai pas d'insertion dans ma table et j'ai ce message lorsque je
l'exécute pas à pas :
"Number of parameters specified does not match the expected number." sur la
ligne "objcmd.Parameters.Append.objcmd.CreateParameter("Nom_Fichiers",
adVarWChar, adParamInput, 512, fri.Name)"; le fri de fri.name est souligné en
vert...
Aussi, est-ce que je dois remplacer le (?) par autre chose ??
Merci pour votre aide :
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
Dim objfso, objfolder, objfile
Dim objcnn, objcmd
Public Sub main()
objcnn = CreateObject("ADODB.Connection")
objcmd = CreateObject("ADODB.Command")
objcnn.ConnectionString = "Provider=sqloledb;Data
Source=monserveur;Initial Catalog=mabase;Integrated Security=SSPI"
objcnn.Open()
Dim di As New DirectoryInfo("L:mondossier")
Dim fiArr As FileInfo() = di.GetFiles()
Dim fri As FileInfo
For Each fri In fiArr
Console.WriteLine(fri.Name)
Next fri
' Objet command permettant d'effectuer une requete action sur la base
objcmd = CreateObject("ADODB.Command")
' Définition de la requete. Le ? indique un paramêtre
objcmd.CommandText = "INSERT INTO matable VALUES(?)"
' Définition du type de commande (requete text, nom de table,
procédure stockée...)'
objcmd.CommandType = adCmdText
' Défiinition de la connexion active
objcmd.ActiveConnection = objcnn
' Création du paramêtre de la requete
objcmd.Parameters.Append.objcmd.CreateParameter("Nom_Fichiers",
adVarWChar, adParamInput, 512, fri.Name)
objcmd.ActiveConnection = objcnn
objcmd.Execute()
objcnn.Close()
ChristianMerci à Fred et Martial,
En effet, comme je suis néophyte, toutes ces informations me seront bien
utiles. Je vais tester tout cela.
Merci pour vos réponses...
ChristianBonjour,
Si tu le permets Fred, je commente ton code afin qu'il soit compréhensible
pour un néophyte.
' Déclaration des constantes propres à ADO
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
' Déclaration des variables
Dim objfso, objfolder, objfile
Dim objcnn, objcmd
' Objet connexion à la base de données
Set objcnn = CreateObject("ADODB.Connection")
' Chaine de connexion à la base de données
objcnn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
' Gestion d'erreur
on error resume next
objcnn.Open
if err.number <> 0 then
wscript.echo "Erreur d'accès à la base" & vbcrlf & err.description
wscript.quit
end if
' Objet command permettant d'effectuer une requete action sur la base
Set objcmd = CreateObject("ADODB.Command")
' Définition de la requete. Le ? indique un paramêtre
objcmd.CommandText = "INSERT INTO FILES VALUES(?)"
' Définition du type de commande (requete text, nom de table, procédure
stockée...)
objcmd.CommandType = adCmdText
' Défiinition de la connexion active
Set objcmd.ActiveConnection = objcnn
' Création du paramêtre de la requete
objcmd.Parameters.Append objcmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, null)
' Parcours des fichiers du répertoire
set objfso = createobject("scripting.filesystemobject")
set objfolder = objfso.getfolder("mondossier")
For Each objfile in objfolder.files
cmd.parameters(0).value = objfile.name
cmd.Execute
Next
objcnn.Close
set objcmd = nothing
set objcnn = nothing
set objfile = nothing
set objfolder = nothing
set objfso = nothing
----------------------------------
martial collinet
http://martialcollinet.free.fr
----------------------------------dans : news:,
Christianbt écrivait :Bonjour,
Bonjour,J'ai un bout de code en VB qui me donne la liste des fichiers
présents dans un dossier spécifique.
Je souhaite récupérer ces noms de fichiers comme variables globales
dans un lot DTS ou insérer ces noms de fichiers dans une table d'une
base SQL Server. Voici mon code actuel :
Une solution pour mettre les noms de fichier dans une table avec ActiveX
Data Objects
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
Set cn = CreateObject("ADODB.Connection")
Set cmd = CreateObject("ADODB.Command")
cn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
cn.Open
cmd.CommandText = "INSERT INTO FILES VALUES(?)"
cmd.CommandType = adCmdText
cmd.Parameters.Append cmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, fri.Name)
Set cmd.ActiveConnection = cn
cmd.Execute
cn.Close
À intégrer dans ton code.
Remarques :
Data Source est de la forme [nom ou ip du serveur][nom de l'instance]
Si la sécurité est en mode SQL, utiliser :
Provider=sqloledb;Data Source=Aron1;Initial Catalog=pubs;User
Id=sa;Password=asdasd
voir ici pour plus de détails : http://www.connectionstrings.com/
Je suppose qu'il y a une base nommée "dataBase"
une table nommée "FILES"
avec une seule colonne de type nvarchar nommée "FileName"
--
Fred
http://www.cerbermail.com/?3kA6ftaCvT
Re-Bonjour,
Voici finalement le code écrit, si je n'ai pas fait trop d'erreur. Mais
néanmoins je n'ai pas d'insertion dans ma table et j'ai ce message lorsque je
l'exécute pas à pas :
"Number of parameters specified does not match the expected number." sur la
ligne "objcmd.Parameters.Append.objcmd.CreateParameter("Nom_Fichiers",
adVarWChar, adParamInput, 512, fri.Name)"; le fri de fri.name est souligné en
vert...
Aussi, est-ce que je dois remplacer le (?) par autre chose ??
Merci pour votre aide :
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
Dim objfso, objfolder, objfile
Dim objcnn, objcmd
Public Sub main()
objcnn = CreateObject("ADODB.Connection")
objcmd = CreateObject("ADODB.Command")
objcnn.ConnectionString = "Provider=sqloledb;Data
Source=monserveur;Initial Catalog=mabase;Integrated Security=SSPI"
objcnn.Open()
Dim di As New DirectoryInfo("L:mondossier")
Dim fiArr As FileInfo() = di.GetFiles()
Dim fri As FileInfo
For Each fri In fiArr
Console.WriteLine(fri.Name)
Next fri
' Objet command permettant d'effectuer une requete action sur la base
objcmd = CreateObject("ADODB.Command")
' Définition de la requete. Le ? indique un paramêtre
objcmd.CommandText = "INSERT INTO matable VALUES(?)"
' Définition du type de commande (requete text, nom de table,
procédure stockée...)'
objcmd.CommandType = adCmdText
' Défiinition de la connexion active
objcmd.ActiveConnection = objcnn
' Création du paramêtre de la requete
objcmd.Parameters.Append.objcmd.CreateParameter("Nom_Fichiers",
adVarWChar, adParamInput, 512, fri.Name)
objcmd.ActiveConnection = objcnn
objcmd.Execute()
objcnn.Close()
Christian
Merci à Fred et Martial,
En effet, comme je suis néophyte, toutes ces informations me seront bien
utiles. Je vais tester tout cela.
Merci pour vos réponses...
Christian
Bonjour,
Si tu le permets Fred, je commente ton code afin qu'il soit compréhensible
pour un néophyte.
' Déclaration des constantes propres à ADO
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
' Déclaration des variables
Dim objfso, objfolder, objfile
Dim objcnn, objcmd
' Objet connexion à la base de données
Set objcnn = CreateObject("ADODB.Connection")
' Chaine de connexion à la base de données
objcnn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
' Gestion d'erreur
on error resume next
objcnn.Open
if err.number <> 0 then
wscript.echo "Erreur d'accès à la base" & vbcrlf & err.description
wscript.quit
end if
' Objet command permettant d'effectuer une requete action sur la base
Set objcmd = CreateObject("ADODB.Command")
' Définition de la requete. Le ? indique un paramêtre
objcmd.CommandText = "INSERT INTO FILES VALUES(?)"
' Définition du type de commande (requete text, nom de table, procédure
stockée...)
objcmd.CommandType = adCmdText
' Défiinition de la connexion active
Set objcmd.ActiveConnection = objcnn
' Création du paramêtre de la requete
objcmd.Parameters.Append objcmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, null)
' Parcours des fichiers du répertoire
set objfso = createobject("scripting.filesystemobject")
set objfolder = objfso.getfolder("mondossier")
For Each objfile in objfolder.files
cmd.parameters(0).value = objfile.name
cmd.Execute
Next
objcnn.Close
set objcmd = nothing
set objcnn = nothing
set objfile = nothing
set objfolder = nothing
set objfso = nothing
----------------------------------
martial collinet
http://martialcollinet.free.fr
----------------------------------
dans : news:C4E83652-317D-4613-ABCD-F6140AA75370@microsoft.com,
Christianbt écrivait :
Bonjour,
Bonjour,
J'ai un bout de code en VB qui me donne la liste des fichiers
présents dans un dossier spécifique.
Je souhaite récupérer ces noms de fichiers comme variables globales
dans un lot DTS ou insérer ces noms de fichiers dans une table d'une
base SQL Server. Voici mon code actuel :
Une solution pour mettre les noms de fichier dans une table avec ActiveX
Data Objects
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
Set cn = CreateObject("ADODB.Connection")
Set cmd = CreateObject("ADODB.Command")
cn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
cn.Open
cmd.CommandText = "INSERT INTO FILES VALUES(?)"
cmd.CommandType = adCmdText
cmd.Parameters.Append cmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, fri.Name)
Set cmd.ActiveConnection = cn
cmd.Execute
cn.Close
À intégrer dans ton code.
Remarques :
Data Source est de la forme [nom ou ip du serveur][nom de l'instance]
Si la sécurité est en mode SQL, utiliser :
Provider=sqloledb;Data Source=Aron1;Initial Catalog=pubs;User
Id=sa;Password=asdasd
voir ici pour plus de détails : http://www.connectionstrings.com/
Je suppose qu'il y a une base nommée "dataBase"
une table nommée "FILES"
avec une seule colonne de type nvarchar nommée "FileName"
--
Fred
http://www.cerbermail.com/?3kA6ftaCvT
Re-Bonjour,
Voici finalement le code écrit, si je n'ai pas fait trop d'erreur. Mais
néanmoins je n'ai pas d'insertion dans ma table et j'ai ce message lorsque je
l'exécute pas à pas :
"Number of parameters specified does not match the expected number." sur la
ligne "objcmd.Parameters.Append.objcmd.CreateParameter("Nom_Fichiers",
adVarWChar, adParamInput, 512, fri.Name)"; le fri de fri.name est souligné en
vert...
Aussi, est-ce que je dois remplacer le (?) par autre chose ??
Merci pour votre aide :
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
Dim objfso, objfolder, objfile
Dim objcnn, objcmd
Public Sub main()
objcnn = CreateObject("ADODB.Connection")
objcmd = CreateObject("ADODB.Command")
objcnn.ConnectionString = "Provider=sqloledb;Data
Source=monserveur;Initial Catalog=mabase;Integrated Security=SSPI"
objcnn.Open()
Dim di As New DirectoryInfo("L:mondossier")
Dim fiArr As FileInfo() = di.GetFiles()
Dim fri As FileInfo
For Each fri In fiArr
Console.WriteLine(fri.Name)
Next fri
' Objet command permettant d'effectuer une requete action sur la base
objcmd = CreateObject("ADODB.Command")
' Définition de la requete. Le ? indique un paramêtre
objcmd.CommandText = "INSERT INTO matable VALUES(?)"
' Définition du type de commande (requete text, nom de table,
procédure stockée...)'
objcmd.CommandType = adCmdText
' Défiinition de la connexion active
objcmd.ActiveConnection = objcnn
' Création du paramêtre de la requete
objcmd.Parameters.Append.objcmd.CreateParameter("Nom_Fichiers",
adVarWChar, adParamInput, 512, fri.Name)
objcmd.ActiveConnection = objcnn
objcmd.Execute()
objcnn.Close()
ChristianMerci à Fred et Martial,
En effet, comme je suis néophyte, toutes ces informations me seront bien
utiles. Je vais tester tout cela.
Merci pour vos réponses...
ChristianBonjour,
Si tu le permets Fred, je commente ton code afin qu'il soit compréhensible
pour un néophyte.
' Déclaration des constantes propres à ADO
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
' Déclaration des variables
Dim objfso, objfolder, objfile
Dim objcnn, objcmd
' Objet connexion à la base de données
Set objcnn = CreateObject("ADODB.Connection")
' Chaine de connexion à la base de données
objcnn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
' Gestion d'erreur
on error resume next
objcnn.Open
if err.number <> 0 then
wscript.echo "Erreur d'accès à la base" & vbcrlf & err.description
wscript.quit
end if
' Objet command permettant d'effectuer une requete action sur la base
Set objcmd = CreateObject("ADODB.Command")
' Définition de la requete. Le ? indique un paramêtre
objcmd.CommandText = "INSERT INTO FILES VALUES(?)"
' Définition du type de commande (requete text, nom de table, procédure
stockée...)
objcmd.CommandType = adCmdText
' Défiinition de la connexion active
Set objcmd.ActiveConnection = objcnn
' Création du paramêtre de la requete
objcmd.Parameters.Append objcmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, null)
' Parcours des fichiers du répertoire
set objfso = createobject("scripting.filesystemobject")
set objfolder = objfso.getfolder("mondossier")
For Each objfile in objfolder.files
cmd.parameters(0).value = objfile.name
cmd.Execute
Next
objcnn.Close
set objcmd = nothing
set objcnn = nothing
set objfile = nothing
set objfolder = nothing
set objfso = nothing
----------------------------------
martial collinet
http://martialcollinet.free.fr
----------------------------------dans : news:,
Christianbt écrivait :Bonjour,
Bonjour,J'ai un bout de code en VB qui me donne la liste des fichiers
présents dans un dossier spécifique.
Je souhaite récupérer ces noms de fichiers comme variables globales
dans un lot DTS ou insérer ces noms de fichiers dans une table d'une
base SQL Server. Voici mon code actuel :
Une solution pour mettre les noms de fichier dans une table avec ActiveX
Data Objects
Const adCmdText = 1
Const adVarWChar = 202
Const adParamInput = 1
Set cn = CreateObject("ADODB.Connection")
Set cmd = CreateObject("ADODB.Command")
cn.ConnectionString = "Provider=sqloledb;Data
Source=serverinstance;Initial CatalogÚtaBase;Integrated
Security=SSPI;"
cn.Open
cmd.CommandText = "INSERT INTO FILES VALUES(?)"
cmd.CommandType = adCmdText
cmd.Parameters.Append cmd.CreateParameter("FileName", adVarWChar,
adParamInput, 512, fri.Name)
Set cmd.ActiveConnection = cn
cmd.Execute
cn.Close
À intégrer dans ton code.
Remarques :
Data Source est de la forme [nom ou ip du serveur][nom de l'instance]
Si la sécurité est en mode SQL, utiliser :
Provider=sqloledb;Data Source=Aron1;Initial Catalog=pubs;User
Id=sa;Password=asdasd
voir ici pour plus de détails : http://www.connectionstrings.com/
Je suppose qu'il y a une base nommée "dataBase"
une table nommée "FILES"
avec une seule colonne de type nvarchar nommée "FileName"
--
Fred
http://www.cerbermail.com/?3kA6ftaCvT
Re-Re,
J'ai modifié un peu le code et le fri n'est plus souligné en vert,
mais toujours la même erreur :
"Number of parameters specified does not match the expected number."
sur la ligne
"objcmd.Parameters.Append.objcmd.CreateParameter("Nom_Fichiers",
adVarWChar, adParamInput, 512, fri.Name)";
For Each fri In fiArr
Console.WriteLine(fri.Name)
Next fri
Re-Re,
J'ai modifié un peu le code et le fri n'est plus souligné en vert,
mais toujours la même erreur :
"Number of parameters specified does not match the expected number."
sur la ligne
"objcmd.Parameters.Append.objcmd.CreateParameter("Nom_Fichiers",
adVarWChar, adParamInput, 512, fri.Name)";
For Each fri In fiArr
Console.WriteLine(fri.Name)
Next fri
Re-Re,
J'ai modifié un peu le code et le fri n'est plus souligné en vert,
mais toujours la même erreur :
"Number of parameters specified does not match the expected number."
sur la ligne
"objcmd.Parameters.Append.objcmd.CreateParameter("Nom_Fichiers",
adVarWChar, adParamInput, 512, fri.Name)";
For Each fri In fiArr
Console.WriteLine(fri.Name)
Next fri