J'utilise Oracle Express Edition et je veux obtenir des informations de table (nom de colonne, type, taille, etc.) par programme, dans mon programme (.Net C#, connecteur Microsoft oracle).décrire requête avec oracle (.Net Connector)
Dans SqlPlus, quand je donne la commande "desc < nom de table >" il fonctionne parfaitement et imprime toutes les informations sur la table.
Maintenant, je veux le faire par programmation. J'ai essayé de donner la requête "desc < nom de table >" mais il a échoué. Alors je lu quelque part que desc est une procédure stockée et nous devons l'appeler comme une procédure stockée, puis je l'ai essayé code suivant, son échec avec l'erreur,
code 1
private OracleDataReader OracleDescribe(string tablename)
{
OracleCommand cmd = new OracleCommand("describe " + tablename, OracleConn);
return cmd.ExecuteReader();
}
Erreur 1
Invalid SQL Statement
code 2
private OracleDataReader OracleDescribe(string tablename)
{
OracleCommand cmd = new OracleCommand("describe", OracleConn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("table", OracleType.VarChar).Value = tablename;
return cmd.ExecuteReader();
}
erreur 2
Encountered the symbol ">" when expecting one of the following: (