0

別のプログラマーがストアド プロシージャを呼び出すコードを調べています。それを呼び出す前に、ストアド プロシージャがテーブルをクエリするために必要なパラメーターを含む配列を作成します。彼は次のように配列を作成します。

param = Array("@Name", 3, 8, "Tom", _
            "@Age", 3, 8, 28, _
            "@City", 100, 200, "Toronto)

ストアド プロシージャは、@Name、@Age、および @City を使用してテーブルをクエリします。

私の質問は、その間の数字は何ですか?

4

3 に答える 3

2

次のようになります。

@Name = パラメータ名

3 = adInteger

8 = 長さ

「トム」=値

@Age= パラメータ名

3 = adInteger

8 = 長さ

28 = 値

@City= パラメータ名

100 = 長さ

200 = adVarChar

「トロント=価値

他の ADO データ型のリストは次のとおりです -

http://www.w3schools.com/ado/ado_datatypes.asp

于 2012-05-04T20:41:14.670 に答える
0

コメントがなければ、確実に、またはコードをステップ実行せずに知ることは不可能です。

それ以外の場合、これが asp.net の場合は、SqlParameterクラスを見て、利用可能なプロパティを確認することをお勧めします: http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlparameter. aspx

ParameterNameと の 2 つの有力な候補があると思いますValueが、2 つの数値はいくつかの異なるものである可能性があります。3の数値であるだけでなく、対応する がありませんSqlDbType.Char。そのタイプのデフォルトは100SqlDbTypeNVarChar.

次の数値は精度である可能性があります。データベース テーブルを見て、それらの値をフィールドに一致させることができるかどうかを確認してください。たとえば、市はVarChar(200)?

于 2012-05-04T20:42:53.833 に答える
0

私の推測では、彼は次のようなパラメーターの配列を使用していると思います: https://stackoverflow.com/a/10142254/2385、ここでパラメーターの配列を使用して、ADO にパラメーターを追加する関数に渡します。指図。

于 2012-05-05T14:47:40.027 に答える