Tôi có một DataTable lấy từ cơ sở dữ liệu SQL, như thế này:Làm thế nào để có được SqlType của một cột trong một DataTable?
using (SqlCommand cmd = new SqlCommand(query, _sqlserverDB))
{
using (SqlDataAdapter adapter = new SqlDataAdapter(cmd))
{
DataSet dataSet = new DataSet();
adapter.Fill(dataSet);
result = (dataSet != null && dataSet.Tables != null && dataSet.Tables.Count > 0) ? dataSet.Tables[0] : null;
}
}
Khi tôi cố gắng để có được những DataType của mỗi cột thông qua dataColumn.DataType, tôi nhận được loại C# (Int32, Int64, String, vv).
CÂU HỎI: Làm cách nào để truy cập các kiểu dữ liệu SQL gốc (varchar, nvarchar, bigint ...) thay vì các loại C#?
Tôi đã thử dataColumn.DataType.UnderlyingSystemType và kết quả giống nhau.
Câu trả lời này đưa tôi đi đúng hướng. Cảm ơn bạn! –
bạn được chào đón :) – infografnet
Thật không may, có một lưu ý trong tài liệu SQL Server 2012 để không sử dụng tính năng này. Xem http://msdn.microsoft.com/en-us/library/ms173839.aspx – Naomi