Précédent   Forum des professionnels en informatique > Bases de données > Autres SGBD
Autres SGBD Vos questions sur les autres SGBD
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 03/08/2006, 18h59   #1
Invité de passage
 
Inscription : juin 2006
Messages : 2
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 2
Points : 1
Points : 1
Par défaut [HSQLDB] problème avec un SELECT utilisant LIMIT

Dans un petit outil d'expérimentation HSQLDB j'ai un problème ramené à priori aux lignes suivantes :

try {
Statement statement = connection.createStatement();
String query = "SELECT * FROM "+'"'+ nomTable+ '"'+" LIMIT 2";
ResultSet rs = statement.executeQuery(query);
. . .
} catch (Exception e) {
sret += e.getMessage();
}
____
Tout fonctionne bien à priori en enlevant le : +" LIMIT 2"
sinon, j'obtiens l'erreur :
Unexpected token: 2 in statement [2]

la version HSQLDB est : 1.8.0.4
Y a-t-il un bug ? sinon dans quels cas l'utilisation de "LIMIT" est-elle possible ?
Pour avoir le cas complet, voir mon projet Open Source en : http://gonic.lyon.free.fr/xor/testOpenSource.html
et télécharger le : ../xor/essai/brouillamineur.jar
---
Sinon, comment limiter le nombre de lignes consultées dans la table ?
Merci d'avance !
don_quichotte est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2006, 10h19   #2
Membre du Club
 
Inscription : mars 2006
Messages : 97
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 97
Points : 46
Points : 46
Le mot clé limit n'existe pas dans le standard SQL. En fait c'est une feature de MySQL.

Si tu veux avoir les 100 premières ligne il faut que tu rajoutes dans
ta requête SQL

"WHERE rownum <= 100"
__________________
Mercenaire du code
Grand sorcier est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/08/2006, 11h39   #3
Invité de passage
 
Inscription : mars 2006
Messages : 2
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 2
Points : 1
Points : 1
Par défaut et pour trier selon un critère qcq avant de faire la sélection

Bonjour,

Merci pour cette solution pour sélectionner les premiers enregistrements.

Maintenant, j'ai un problème pour afficher les premiers enregistrements mais après avoir trié tous les enregistrements de la BD..

Est ce que vous avez une solution sans utiliser les SELECT imbriqués ?

Merci.
bm_belgacem est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/03/2007, 08h49   #4
Membre émérite
 
Inscription : juin 2006
Messages : 1 204
Détails du profil
Informations personnelles :
Âge : 36

Informations forums :
Inscription : juin 2006
Messages : 1 204
Points : 922
Points : 922
ne manquerait-il pas un order by ?
select * from mytable order by col limit 2

ou tu peux faire un
select top 2 * from mytable

j'utilise la 1.8.0.7 et je n'ai pas de probleme...
epsilon68 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/03/2007, 20h44   #5
Membre VIP
 
Inscription : mars 2007
Messages : 9
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 9
Points : 10
Points : 10
Citation:
Envoyé par Grand sorcier
Le mot clé limit n'existe pas dans le standard SQL. En fait c'est une feature de MySQL.

...
Pour information, il y a maintenant un standard
http://troels.arvin.dk/db/rdbms/#select-limit
Non-core Feature ID T611 specifies window functions, of which one is ROW_NUMBER() OVER

Un example:
SELECT * FROM (
SELECT
ROW_NUMBER() OVER (ORDER BY key ASC) AS rownumber,
columns
FROM tablename
) AS foo
WHERE rownumber <= n

Francois Orsini
http://blogs.sun.com/FrancoisOrsini/
forsini est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/04/2007, 23h08   #6
Membre émérite
 
Inscription : juin 2006
Messages : 1 204
Détails du profil
Informations personnelles :
Âge : 36

Informations forums :
Inscription : juin 2006
Messages : 1 204
Points : 922
Points : 922
on parle bien de HSQLDB ?
epsilon68 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 12h59.


 
 
 
 
Partenaires

Hébergement Web