INFORMIX-SQL ou tout autre DB basé sur SQL:table des variables ou les noms de colonnes
Supposons que j'ai une application où en fonction de la valeur de certaines colonnes, par exemple:
company.code char(3) {abc}
company.branch char(2) {01}
Puis-je construire la table nom "abc01" pour l'inclusion dans SELECT * FROM abc01; ? En d'autres termes, un nom de table variable .. même question s'applique pour les noms de colonnes.
Est-il possible d'envoyer le nom d'une table en tant que paramètre dans une fonction et d'effectuer un SELECT? –
@PaulVargas: en quelque sorte ... mais généralement pas vraiment. La fonction SQL dynamique dans les procédures stockées dans 11.70 (11.50?) Informix signifie que vous pouvez le faire. Le problème est "quel est le type de retour des données" et comment le renvoyez-vous via la procédure, qui a une signature fixe. Pour les chaînes courtes et les types numériques ou temporels, vous pouvez vous en sortir en retournant VARCHAR (255) et en laissant les conversions gérer cela; ça va marcher. Mais cela ne fonctionnera pas pour les types de données totalement arbitraires - chaînes longues, et certains types définis par l'utilisateur, etc. Donc la réponse est "Pas vraiment, mais vous pourriez essayer si vous le vouliez vraiment". –