Problème de syntaxe d'une requête ! [ACCESS] - SQL/NoSQL - Programmation
Marsh Posté le 06-06-2003 à 16:00:18
t'es vraiment sûr qu'il peut pas ?
par contre t'as oublié de mettre un nom de champ (ou une étoile) entre le 5 et le FROM
Marsh Posté le 10-06-2003 à 14:14:27
euh oui désolé j'ai mal recopié, je l'avait fait et ça marche pas
Marsh Posté le 10-06-2003 à 19:40:55
Dinbougre888 a écrit : Voilà je voudrais savoir si Access pouvait faire comme SQL Server :
|
Bon, ben le "TOP" fonctionne, sous Access 2000 et + en tout cas :
SELECT a1.label, (select top 1 u1.name from correction c1, user u1 where u1.id = c1.user_id |
J'ai fait cette requête tout à l'heure dans Access pour un autre topic, et je me suis apperçu qu'en fait j'utilisais un TOP.
Marsh Posté le 12-06-2003 à 17:50:14
MagicBuzz a écrit :
|
bon bah je v essayer ce soir
Marsh Posté le 12-06-2003 à 17:51:42
en général je n'utilise que TOP 1 (je suis quasi sûr qu'il fonctionne dans Access 2000), je pense que d'autres valeurs fonctionnent aussi
Marsh Posté le 12-06-2003 à 18:31:58
antp a écrit : en général je n'utilise que TOP 1 (je suis quasi sûr qu'il fonctionne dans Access 2000), je pense que d'autres valeurs fonctionnent aussi |
euh une question me trotte
moi j'avais fait un SELECT TOP 0 * FROM MATABLE
me demandez pas pk 0 mais j'en avais besoin
Marsh Posté le 12-06-2003 à 18:59:50
je me demande quand même pourquoi
Si c'est juste pour avoir les colonnes en général je fais WHERE ID = -1
Marsh Posté le 13-06-2003 à 09:31:17
antp a écrit : je me demande quand même pourquoi |
en fait je veux ouvrir mon recordset en écriture donc j'ai pas besoin qu'il me retourne de ligne
Sur sqlserver j'ai toujours fait SELECT TOP 0 * FROM MATABLE
du coup sur access j'ai fait SELECT * FROM MATABLE WHERE 0=1
ça donne la même chose que ton ID = -1
Marsh Posté le 13-06-2003 à 09:51:50
Je préfère 0=1 à ID=-1, parceque avec un peu de pas de chance, il peut y avoir un id=-1 (je l'utilise souvent quand je fais des tables avec des relations père/fils, afin de différencier l'enregistrement racine des autres)
Marsh Posté le 13-06-2003 à 09:58:29
Ouais en effet 0=1 c'est encore mieux.
Pour l'id = -1 dans certains cas on est sûr que c'est impossible (autonumber par ex) puis c'est pas un drame qu'un enregistrement soit retourné
Marsh Posté le 13-06-2003 à 10:00:07
antp a écrit : Ouais en effet 0=1 c'est encore mieux. |
Bah dans Access, pas sûr, mais en effet, c'est peut-être impossible.
Mais dans SQL Server, non, avec un autonumber on peut mettre -1. Il suffit de faire "set identity off" avant la requête d'inserstion, et on peut spécifier soit-même l'id à inserrer.
ou alors c'est "set nocount on", chais pus (j'utilise les deux, c'est plus simple )
Marsh Posté le 06-06-2003 à 14:03:20
Voilà je voudrais savoir si Access pouvait faire comme SQL Server :
SELECT TOP 5 * FROM MaTable
voilà la syntaxe qui m'intéresse "TOP". Elle permet de sélectionner un nombre maximal de lignes définies
Message édité par dinbougre888 le 10-06-2003 à 14:14:39