存在しないパラメーターに対してParamByNameを呼び出すとどうなりますか?

StackOverflow https://stackoverflow.com/questions/8880091

  •  28-10-2019
  •  | 
  •  

質問

私はDelphiを初めて使用し、次のコードを受け取りました(いくつかの無関係な部分は省略しました)。これについて、Delphiの機能を理解しようとしています。 ジェネラコディセタグプレ

別のファイルでは、そのクエリが使用されていますが、クエリで定義されていないパラメータが追加されています。 ジェネラコディセタグプレ

このパラメータ'part'は、行われた選択について何か変更しますか?言い換えると、SQLクエリは自動的に次のように変更されますか? ジェネラコディセタグプレ

役に立ちましたか?

解決

つまり、SQLステートメントは実行時に変更される可能性があります。したがって、そのクエリが使用されると、SQLにはすでにAND part = :partが含まれています。

SQLステートメントにこの追加パラメーターpartが含まれていない場合、ParamByName('part').Value := 1を割り当てるときに例外が発生します。

SelectCostsリファレンス(DM_HRVにあり、他のDMにはない)を混同していないと思います。

他のヒント

投稿の次のステートメントはパラメータを追加せず、その値を設定します: ジェネラコディセタグプレ

実行時にパラメータを追加するには、次のようにCreateParamを使用します。 ジェネラコディセタグプレ

クエリは自動的に変更されません。自分で変更する必要があります。

最初のスニップでは、ParamTypeとInputTypeが定義されていません。パラメータリスト(Params)プロパティエディタにアクセスし、それらの値を更新することで、IDEで変更できます。

新しいパラメータを追加しても、クエリは変更されません。自分でやらなければなりません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top