我想选择使用c#的表列属性。我写了这段代码。我的查询正在处理sqlserver。但我不会在C#中获得最大长度。C#选择Transact-SQL(表列属性)
我的查询是这里
//TableName:Contents, ColumnName : Title
select Col_Length('Contents','Title') as columnLengthh
结果是在这里:
我的C#代码这里:
string columnLength = "select Col_Length('Contents','Title') as columnLengthh";
adapter = new SqlDataAdapter(columnLength, connection);
dataSet = new DataSet();
adapter.Fill(dataSet);
DataTable dataTable2 = dataSet.Tables[0];
foreach (DataRow row in dataTable2.Rows)
{
var x = row["columnLengthh"].ToString();
}
结果(x = -1)
如何在c#中获得长度。
请帮忙!
你的语句返回一个值,你不应该使用适配器/数据集,而只需调用command.ExecuteScalar() –
检查您的连接。除了创建Dataset和DataTable的不必要开销外,我在代码中看到没有错误。 -1是COLLENGTH()值的合法值:对于使用最大说明符('varchar(max)')声明的varchar类型的列,“COL_LENGTH”返回值-1。 – Serg