法 一:
/// <summary>
/// 获取SqlServer表中的字段信息,包括字段名称、字段类型、字段长度、小数位数精度
/// </summary>
/// <param name="tableName"></param>
private void GetTableFileds(string tableName)
{
List<Model> _Fields = new List<Model>(); //Model是存储上述数据的模型
SqlConnection _Connection = new SqlConnection(DataBaseConnectString); //DataBaseConnectString是数据库连接字符串
try
{
_Connection.Open();
string getMessageSql = string.Format(@"SELECT
A.NAME column_name,
B.NAME data_type,
A.PREC column_length,
A.SCALE column_scale
FROM
SYSCOLUMNS A
INNER JOIN SYSTYPES B ON A.XTYPE = B.XTYPE
LEFT JOIN SYSINDEXKEYS C ON A.ID = C.ID
AND A.COLID = C.KEYNO
WHERE
OBJECT_NAME( A.ID ) = '{0}'", tableName);
SqlCommand command = new SqlCommand(getMessageSql, _Connection);
SqlDataReader reader = command.ExecuteReader(