? を使用する代わりに、Oracle と同じ表記法、つまり :0, :1 を使用して、SQL Server でバインド変数を示すことは可能ですか。
私は検索しましたが、これについて決定的なものは見つかりませんでした。現時点では、私のソリューションはバインド変数を使用して、データベースで実行するステートメントに値を導入します。これは Oracle でうまく機能しますが、SQL Server と PostGIS でも同じことを行う必要があります。たとえば、次のように言う必要はありません。
switch(dialect)
{
case "Oracle":
{
oleDataBaseConnection.AddParameter(":1", coordsys);
break;
}
case "SQLServer":
{
oleDataBaseConnection.AddParameter("?", coordsys);
break;
}
}
*AddParameter() は、作成した実行関数を呼び出すときに、コマンド オブジェクトに追加されるリストに値を追加するラッパー クラスの関数です。
上記のようにハードコードされたものを含めずに、コードをできるだけきれいにしたいと思います。すべてに適合するソリューションを希望します。(はい、これはおそらく希望的観測であることはわかっています!)
これを行うために文字列置換を使用できることは知っていますが、それは私が求めているものではありません。私は本当にそのような回避策を使いたくありません。また、プロジェクト マネージャーから、バインド変数を使用して解決策を見つけるように依頼されました。
何か案は?