Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Requêtes et SQL.
Requêtes et SQL. Tout ce qui concerne vos questions sur les requêtes et le SQL sous Access se trouve ici.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/01/2011, 08h35   #1
Candidat au titre de Membre du Club
 
Stephen
Inscription : mars 2009
Messages : 59
Détails du profil
Informations personnelles :
Nom : Stephen
Localisation : France

Informations forums :
Inscription : mars 2009
Messages : 59
Points : 13
Points : 13
Par défaut Amelioration de la requete

Bonjour,


Je cherche a ameliorer mes requetes, car realise actuellement dans mon programme les deux requetes suivantes :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
MyAccessCommand.Connection = MyAccessConn;
MyAccessCommand.Transaction = transaction;
SQLquery = "SELECT MAX(idCoordinates) FROM Coordinate;";
MyAccessCommand.CommandText = SQLquery;
// For a SELECT, use ExecuteReader so as get a datareader
OleDbDataReader reader = MyAccessCommand.ExecuteReader();
if (reader != null)
{
     while (reader.Read())
     {
             last_insert_id = reader[0].ToString();
     }
      reader.Close();
}
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
MyAccessCommand.Connection = MyAccessConn;
MyAccessCommand.Transaction = transaction;
SQLquery = "INSERT INTO Customers (nameCustomers, isSchoolCustomers, noteCustomers, idCoordinates) VALUES " +
                                    "( @name, @isSchool, @notes, @last_insert_id );";
#region Parameters
MyAccessCommand.Parameters.Clear();
MyAccessCommand.Parameters.Add("@name", OleDbType.VarChar, 50).Value = name;
MyAccessCommand.Parameters.Add("@isSchool", OleDbType.Boolean).Value = isSchool;
MyAccessCommand.Parameters.Add("@notes", OleDbType.VarChar).Value = notes;
if (last_insert_id != null && last_insert_id != "")
{
     MyAccessCommand.Parameters.Add("@last_insert_id", OleDbType.SmallInt).Value = Int16.Parse(last_insert_id);
}
else
{
      MyAccessCommand.Parameters.Add("@last_insert_id", OleDbType.SmallInt);
      MyAccessCommand.Parameters["@last_insert_id"].Value = DBNull.Value;
}
#endregion
MyAccessCommand.CommandText = SQLquery;
MyAccessCommand.ExecuteNonQuery();
Est-il possible de faire de la premiere requete une sous-requete dans la seconde, car j'ai l'impression que ça ralenti beaucoup les choses sous la forme de deux requetes. J'ai essayer de plusieurs manieres differentes mais Access me refuse toutes mes tentatives.

Je vous remercie,
Steph0 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h40.


 
 
 
 
Partenaires

Hébergement Web