begin process at 2012 02 14 13:31:11
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

Bases de données

 > 

Executer une requete SQL avec ADO


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Executer une requete SQL avec ADO

vendredi 10 février 2006 à 15:28:01 | Executer une requete SQL avec ADO

filou

Membre Club

Bonjour,

J'aimerai pouvoir executer une requete SQL avec un recordset ADO.

J'ouvre ma base de cette facon :

Call OuvreBase(App.Path & "\STV.mdb", "SELECT * FROM Societe ORDER BY NomSociete")


Public Sub OuvreBase(sPath As String, sCmdSql As String)

Set adoConnect = New ADODB.Connection
adoConnect.Provider = "Microsoft.Jet.OLEDB.4.0"

adoConnect = New ADODB.Connection
adoConnect.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + sPath + ";Jet OLEDB:Database Password=pssst"

adoConnect.Open

adoCommandEve.ActiveConnection = adoConnect
adoCommandEve.CommandText = sCmdSql
adoRS.CursorLocation = adUseClient
adoRS.CursorType = adOpenStatic
adoRS.LockType = adLockPessimistic
adoRS.Open adoCommandEve

End Sub

Ce que j'amerai faire c'est : Modifier l'ordre de tri, ajouter des enregistrements sur une autre table ect. sans avoir besoin de refermer la table.

Merci

Filou

vendredi 10 février 2006 à 16:40:59 | Re : Executer une requete SQL avec ADO

econs

Administrateur CodeS-SourceS

Une table ne s'ouvre pas, et ne se referme pas.
Une connexion peut s'ouvrir et se fermer.

Si tu déclares ton objet adoConnect en Public dans ton code, tu auras toujours ta connexion à la base de données ouverte.
(Ne pas oublier de la fermer sur fermeture de ton programme)

Tu pourras donc, à tout moment et n'importe où dans le code, faire une requête sur une table, ajouter un élément, ...

Pour modifier l'ordre de tri, il faut rajouter un "ORDER BY NomDuChamp" à la fin de ta requête SQL.

Pour ajouter un élément dans une table, il faut faire un "INSERT ... ". Mais là, çà devient un problème SQL, pas VB.



Manu



vendredi 10 février 2006 à 17:07:59 | Re : Executer une requete SQL avec ADO

filou

Membre Club

salut,
Effectivement mon objet adoConnect est Public  
Public adoConnect As New ADODB.Connection

Dixit Manu :
"" Tu pourras donc, à tout moment et n'importe où dans le code, faire une requête sur une table, ajouter un élément, ...""

Ce que je ne sais pas faire c'est appliquer une requete à une connexion ouverte.
.

Filou

vendredi 10 février 2006 à 23:51:12 | Re : Executer une requete SQL avec ADO

econs

Administrateur CodeS-SourceS
Voici un exemple de requête envoyée à ta base de données :

adoConnect.Execute("SELECT * FROM maTable;")

avec maTable qui est le nom d'une table qui existe.

Manu



samedi 11 février 2006 à 12:06:15 | Re : Executer une requete SQL avec ADO

filou

Membre Club
Salut et merci Manu,

J'ai essayé adoConnect.Execute ("SELECT * FROM Tireurs;")  cela ne marche pas.

Ma base est ouverte exactement comme décrit dans le 1er post.

Ma base contient 4 tables si j'ouvre de cet facon  Call OuvreBase(App.Path & "\STV.mdb", "SELECT * FROM Societe, Tireurs ORDER BY NomSociete")
dans un combobox que je remplis à l'aide d'une boucle il m'effiche 3 fois le même enregistrement (ligne).

Si j'ouvre comme ca Call OuvreBase(App.Path & "\STV.mdb", "SELECT * FROM Societe ORDER BY NomSociete")  pas de prob dans le combobox mais je ne peut rien faire sur la table Tireurs.

Autre question la facon dont j'initialise ma base (procedure OuvreBase) est elle correct

Fikou

mardi 15 janvier 2008 à 12:59:27 | Re : Executer une requete SQL avec ADO

Yuki59500

Salut, si c'est du VB.Net, utilise la commande adoConnect.ExecuteNonQuery()
Sinon tu disposes d'autres types d'exécutions de requêtes, essaye-les ^^

Yuki vous souhaite d'être aussi chanceux qu'un Ecaflip, aussi fort qu'un Iop et aussi ponctuel qu'un Xelor
mardi 15 janvier 2008 à 13:45:21 | Re : Executer une requete SQL avec ADO

filou

Membre Club
Salut Yuki59500,
Merci pour ta réponse,
Quand j'ai posé ce post j'était en VB6 je suis en .net maintenant. C'est marrant j'ai repris le dévellopement d'une appli ce matin après 4 mois d'arrêt, c'est un peu galère.

Ce qui m'amène à une question, J'aimerai en VB.Net ouvrir des bases liée et pouvoir faire des ajout et de suppressions de lignes. J'ai essayé mais cela ne marche pas et j'avais lu sur un forum que cela n'était pas possible en vb.net !!!

En VB6 j'ai une requete de ce genre et cela fonctionne :
sSql = sSql & "SELECT " & T_Section25
sSql = sSql & "FROM  Tireurs T, CibleSection25 A, Societe S "
sSql = sSql & "WHERE T.T_IdSociete = S.S_IdSociete AND T.T_IdTireur = A.SC_IdTireur "
sSql = sSql & "ORDER BY A.SC_Total DESC, A.SC_Cp1 DESC, A.SC_Cp2 DESC, A.SC_CP3 DESC, A.SC_Cp4 DESC, A.SC_Cp5 DESC, " & _
"SC_Cp6, SC_Cp7, SC_Cp8, SC_Cp9, SC_Cp10, T_Categorie ASC, T.T_DateNaiss ASC


J'ouvre mes base de cette façon en .net:

sSQL =

"SELECT * FROM " & tabConcours(NomTable) & " ORDER BY I_Total DESC, I_Passe6 DESC, I_Passe5 DESC, I_Passe4 DESC, " & _

"I_Passe3 DESC, I_Passe2 DESC, I_Passe1 DESC, I_Nom;"

OuvreBaseClassement(sSQL,

"Cl25m.mdb", tabConcours(NomTable))

Public

Sub OuvreBaseClassement(ByVal sSQL AsString, ByVal sNomBase AsString, ByVal sNomTable AsString)

''Ouverture base

'Initialisation de la chaîne de paramètres pour la connexion

sConnect =

"Provider=Microsoft.Jet.OLEDB.4.0;" & _

"Data Source = " & Application.StartupPath & "\" & sNomBase & ";"

''Connection base

Classement_Connection =

New OleDbConnection

'Donner à la propriété ConnectionString les paramètres de connexion

Classement_Connection.ConnectionString = sConnect

''Ouvrir la connection

Classement_Connection.Open()

''Instancier un objet commande

Classement_Command =

New OleDbCommand(sSQL)

''Instancier un objet Adapter

Classement_DataAdapter =

New OleDbDataAdapter(Classement_Command)

''init objet command

Classement_Command.Connection = Classement_Connection

'Avec l'aide de la propriété Fill du DataAdapter charger le DataSet

Classement_DataAdapter.Fill(Classement_DataSet,

CStr(sNomTable))

'Mettre dans un Objet DataTable une table du DataSet

Classement_DataTable = Classement_DataSet.Tables(

CStr(sNomTable))

Classement_Connection.Close()

''Premier enregistrement

iNumLigne = 0

EndSubMerci d'avance
 FiloU
mardi 15 janvier 2008 à 22:27:19 | Re : Executer une requete SQL avec ADO

Yuki59500

Dis toi que tout est possible et qu'il suffit de t'en donner les moyens...

Tu n'as qu'à créer 2 variables requêtes de type 'String' et ensuite tu en consacres une à l'insertion et une à la suppression.

Celà dit je ne vois pas comment ouvrir les bases liées, désolé de ne pouvoir répondre à ta question!

Yuki vous souhaite d'être aussi chanceux qu'un Ecaflip, aussi fort qu'un Iop et aussi ponctuel qu'un Xelor


Cette discussion est classée dans : ado, sql, requete, executer, adoconnect


Répondre à ce message

Sujets en rapport avec ce message

DEBUTANTE - SQL et ADO [ par Gaëlle ] BonjourJe souhaite inclure une requete SQL ds mon code source pour aller chercher des infos sur un serveur via une connection ODBC.Pb: J'ai vraiment d Requete SQL sur Bd Visual FoxPro (*.dbf) trop lent avec ADO [ par long ] Dans un appication VB, j'écrit une requête SQL sur une grosse table VF (*.dbf) avec SELEC * FROM ...via ODBC pour afficher dans un datagrid (Ms Datagr requete SQL pour access dans un prog VB6 [ par Opespadon ] Operation Espadon Pouvez vous m'aider SVP ?Je préviens je suis débutant !!!J'ai crée une table sous access et je voudrais executer des requetes sur ce Fonction vba pour executer requete sql [ par shainaizz ] Bonjour, j'ai une petite question j'ai crée une base de données sous Access et maintenant je crée une interface en vbadans mon code je voudrais faire Executer une requete sql sous VB (urgent) [ par Neo Bahamut ] Bonjour a tous je souhaiterai avoir le code pour executer une requete sql sous VB. Mon projet consiste à faire une base de données pour reserver un ca requete [ par mouhoub ] bonjour, je voudrais vous poser une question a propos d'une requete sql avec dataEnvironnement sur VB6, quand je veus executer une requete sql dans un je voudrais me connecter a sql server executer une requete d'insertion a partie d'excel [ par brouri_lakhdar ] lakje voudrais me connecter a sql server executer une requete d'insertion a partie d'excel j'ai besoin d'une idee , je n'arrive pas a trouver sur inte executer une requete sql a l extinction du pc [ par aldrac ] Bonjour à tous, voila j'ai fais un petit prog (sous vb 2008) qui tourne en permanence (du demarage à l extinction du pc), mais j'ai un problème :  à l requete [ par ddove53 ] Slt, j'ai une requete qui suit et j'ai un message d'erreur "erreur de syntaxe(virgule) dans l'expression '[ref reseau]=5". Je ne vois pas mon erreur.h Requete suppression des doublons VB6/SQL [ par chefinf ] Svp, je veux savoir comment creer une requete SQL qui supprime seulement les red<span lang="FR" style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman'


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,466 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales