Vous êtes problème est la longueur de la SELECT clause dans la requête? Eh bien je suppose que vous pourriez envisager de faire:
SELECT *, transform(the_geom, NEW_SRID) as newsrid
ce qui est évidemment très court. Cependant, cela signifie que vous obtenez deux fois la valeur de colonne 'the_geom' pour chaque ligne.
Editer: Je tiens à souligner que je ne dis pas que j'aime faire 'SELECT *'. Peu importe le nombre de colonnes que je sélectionne dans une table, j'énonce toujours explicitement les noms. Cela nous amène à une autre question: «Quel est le problème de nommer explicitement toutes les colonnes?
Édition2: Bon, vous avez 60 colonnes dans la table que vous sélectionnez. Je sais que c'est beaucoup de travail de dactylographie, mais encore une fois, quel est le problème? Ce n'est qu'une question ponctuelle. Il existe probablement des programmes de gestion de base de données qui pourraient même générer la requête pour vous. Au moins, le logiciel que nous utilisons peut.
L'utilisation du joker n'est pas une bonne pratique, du moins pas dans cette situation. Ce n'est pas facile à maintenir, car dans votre environnement de programmation, vous ne pouvez pas voir une liste de colonnes. Vous devrez toujours vérifier cela via un programme de gestion de base de données. Et j'espère que vous n'accédez pas aux colonnes par index? Comme:
object columnvalue = row[21];
Parce que cela, en combinaison avec le joker, fera de votre programme un véritable enfer à maintenir. Vraiment, même si cela vous coûte plus de temps pour programmer, à la fin, nommer les colonnes de votre requête sera payant.
Avoir 60 colonnes dans une table. –
J'ai mis à jour ma réponse concernant 60 colonnes. – pyrocumulus
+1 Bonne réponse. –