データベースにコマンドを送信する必要があります。影響を受けるテーブルのすべてのフィールドの名前とデータ型を知っているので、それらを使用してコマンドを生成する必要があります。私の唯一の問題は、どの列値がTSQLで引用符を必要とするデータ型であるかを判断することです。たとえば、フィールドがHello World
タイプの文字列である場合は引用符で囲む必要がありますが、5varchar
の場合は引用符で囲みint
ません。引用する必要があります。
次のようなコードを使用することもできますが、非常に非効率的です。誰かがこれを行うためのより良い方法を教えてもらえますか?おそらく組み込みのSQLサーバーまたはC#機能を使用しますか?
public string QuoteStringIfDatatypeRequires(string columnName)
{
if (DataTypes[columnName].Contains("date") || DataTypes[columnName].Contains("time") ||
DataTypes[columnName].Contains("char") || DataTypes[columnName].Contains("text") ||
DataTypes[columnName].Contains("binary") || DataTypes[columnName].Contains("image"))
{
return "'" + columnName + "'";
}
return columnName;
}