是否有.NET的SqlClient的方式來翻譯SQLTYPE實際SQL類型聲明,就像如何將SqlType本地轉換爲基礎SQL類型聲明?
SqlInt32 -> "int"
SqlGuid -> "uniqueidentifier"
SqlXml -> "xml"
SqlString -> "nvarchar(??)"
沒有做手工?
CLARIFICATION:我試圖自動重構一些SQL select語句,我需要知道它們返回的是什麼類型。我打算通過運行下面的代碼來做到這一點:
using (var connection = new SqlConnection(SqlConnectionString))
{
connection.Open();
var command = connection.CreateCommand();
command.CommandText = sql;
var reader = command.ExecuteReader(CommandBehavior.SchemaOnly);
for (int i = 0; i < reader.FieldCount; ++i)
{
var type = reader.GetProviderSpecificFieldType(i);
... generate some sql code ...
}
}
所以,一旦我得到的類型,我試圖生成一些SQL代碼,並使用SqlTye在GetProviderSpecificFieldType回來了,我想看看有沒有已經有一個我可以使用的函數,它將採用SqlType並將SQL聲明還給我。
+1,感謝您分享您的解決方案。 – Heinzi 2009-11-23 23:19:01