1

SQL Server Management Studio でストアド プロシージャを実行できますが、その定義を表示する権限がありません。

返された各列のデータ型を特定するにはどうすればよいですか?

入力パラメーターの型は表示されますが、返された行の型は表示されません。

4

2 に答える 2

0

私はあなたの質問を間違っているかもしれませんが、これに答えようとします。おそらくそれは解決策ではありませんが、少なくとも試してみてください...

プログラミング言語を使用して、Java などのストアド プロシージャを呼び出すことができます。そして、 を使用して返品を確認しますResultSetMetaData

 ResultSet rs = ...
 ResultSetMetaData rsmd = rs.getMetaData();
 int numberOfColumns = rsmd.getColumnCount();
 String columnLabel = rsmd.getColumnLabel(1);
 String columnName = rsmd.getColumnName(1);
 int columnType = rsmd.getColumnType(1);
 String columnTypeName = getColumnTypeName(1);

 etc

これはもちろん、ストアド プロシージャを何らかの方法でチェックする権限がないと想定しているためです (システム テーブルなどへのアクセス権はありませんが、SP を実行できるのはアクセス権だけです)。

http://docs.oracle.com/javase/6/docs/api/java/sql/ResultSetMetaData.html

于 2013-09-14T20:06:08.097 に答える
-1

このテーブル「sys.parameters」は、SP に関するすべての詳細を提供します。

ありがとう !

于 2013-09-14T20:01:02.903 に答える