dot net中C#执行sql语句的问题(SWoodland项目)
2007-06-06 23:03
253 查看
这个函数执行得出的结果不正确:
----------------------------------------------------------------------------------------------------------------------------
public IList<int> getAmountOfFastnessWindValueInVillage(string value, string VillageCode)
{
string SQL = "(select count(*),树种 from trees where 标准地编号=@VillageCodeand 树干饱满度枝干=@Bvalue group by 树种) UNION (select 0,树种 from trees where 树种 not in (select 树种 from trees where 标准地编号='506060701' and 树干饱满度枝干=@Bvalue group by 树种) order by 树种";
IList<int> AmountOfFastnessWindValueVillage = new List<int>();
OleDbParameter[] parms = new OleDbParameter[] {
new OleDbParameter (@VillageCodeand, OleDbType.VarChar, 50),
new OleDbParameter (@Bvalue , OleDbType.VarChar, 50)};
parms[0].Value = value;
parms[1].Value = VillageCode;
using (OleDbDataReader rdr = OleHelper.ExecuteReader(OleHelper.ConnectionString, CommandType.Text, SQL, parms))
{
while (rdr.Read())
{
AmountOfFastnessWindValueVillage.Add(rdr.GetInt32(0));
}
}
return AmountOfFastnessWindValueVillage;
}
-----------------------------------------------------------------------------------------------------------------------------
修改这个函数,执行得出的结果就正确了:
-----------------------------------------------------------------------------------------------------------------------------
public IList<int> getAmountOfFastnessWindValueInVillage(string VillageCode)
{
string SQL = "(select count(*),树种 from trees where 标准地编号=@VillageCodeand 树干饱满度枝干='优' group by 树种) UNION (select 0,树种 from trees where 树种 not in (select 树种 from trees where 标准地编号=@VillageCodeand and 树干饱满度枝干='优' group by 树种) order by 树种";
IList<int> AmountOfFastnessWindValueVillage = new List<int>();
OleDbParameter parm = new OleDbParameter (@VillageCodeand, OleDbType.VarChar, 50);
parms[1].Value = VillageCode;
using (OleDbDataReader rdr = OleHelper.ExecuteReader(OleHelper.ConnectionString, CommandType.Text, SQL, parm))
{
while (rdr.Read())
{
AmountOfFastnessWindValueVillage.Add(rdr.GetInt32(0));
}
}
return AmountOfFastnessWindValueVillage;
}
-----------------------------------------------------------------------------------------------------------------------------
不知道什么原因。
----------------------------------------------------------------------------------------------------------------------------
public IList<int> getAmountOfFastnessWindValueInVillage(string value, string VillageCode)
{
string SQL = "(select count(*),树种 from trees where 标准地编号=@VillageCodeand 树干饱满度枝干=@Bvalue group by 树种) UNION (select 0,树种 from trees where 树种 not in (select 树种 from trees where 标准地编号='506060701' and 树干饱满度枝干=@Bvalue group by 树种) order by 树种";
IList<int> AmountOfFastnessWindValueVillage = new List<int>();
OleDbParameter[] parms = new OleDbParameter[] {
new OleDbParameter (@VillageCodeand, OleDbType.VarChar, 50),
new OleDbParameter (@Bvalue , OleDbType.VarChar, 50)};
parms[0].Value = value;
parms[1].Value = VillageCode;
using (OleDbDataReader rdr = OleHelper.ExecuteReader(OleHelper.ConnectionString, CommandType.Text, SQL, parms))
{
while (rdr.Read())
{
AmountOfFastnessWindValueVillage.Add(rdr.GetInt32(0));
}
}
return AmountOfFastnessWindValueVillage;
}
-----------------------------------------------------------------------------------------------------------------------------
修改这个函数,执行得出的结果就正确了:
-----------------------------------------------------------------------------------------------------------------------------
public IList<int> getAmountOfFastnessWindValueInVillage(string VillageCode)
{
string SQL = "(select count(*),树种 from trees where 标准地编号=@VillageCodeand 树干饱满度枝干='优' group by 树种) UNION (select 0,树种 from trees where 树种 not in (select 树种 from trees where 标准地编号=@VillageCodeand and 树干饱满度枝干='优' group by 树种) order by 树种";
IList<int> AmountOfFastnessWindValueVillage = new List<int>();
OleDbParameter parm = new OleDbParameter (@VillageCodeand, OleDbType.VarChar, 50);
parms[1].Value = VillageCode;
using (OleDbDataReader rdr = OleHelper.ExecuteReader(OleHelper.ConnectionString, CommandType.Text, SQL, parm))
{
while (rdr.Read())
{
AmountOfFastnessWindValueVillage.Add(rdr.GetInt32(0));
}
}
return AmountOfFastnessWindValueVillage;
}
-----------------------------------------------------------------------------------------------------------------------------
不知道什么原因。
相关文章推荐
- C# 执行oracle sql 语句出现中文不兼容的问题
- 一个Web报表项目的性能分析和优化实践(一):小试牛刀,统一显示SQL语句执行时间
- Err1055,出现这个问题往往是在执行sql语句时候,在最后一行会出现这个问题。
- mysql使用kill命令解决死锁问题,杀死某条正在执行的sql语句
- 同样的SQL语句在查询分析器执行很快,但是网站上执行超时的诡异问题
- 关于No Dialect mapping for JDBC type :-9 hibernate执行原生sql语句问题
- Sql server 数据库中,纯SQL语句查询、执行 单引号问题。
- jdbc 链接mysql执行sql语句出现中文乱码问题
- "执行SQL语句时出现问题操作必须使用一个可更新的查询"错误的解决方法
- 一个Web报表项目的性能分析和优化实践(一):小试牛刀,统一显示SQL语句执行时间
- 代码中执行sql语句访问mysql,无法匹配中文字符的问题
- 关于No Dialect mapping for JDBC type :-9 hibernate执行原生sql语句问题
- 解决存储过程中SQL字符串语句执行引入参数的问题
- 开发中遇到的一个关于 SQL 语句执行的问题
- 在ASP程序中执行SQL语句的安全性问题
- 存储过程中用exec执行sql语句问题
- Sql server 数据库中,纯SQL语句查询、执行 单引号问题。
- 关于Qt使用QSqlQuery执行sql语句时出现out of memory的问题
- 使用Hibernate 5.0、4.0、3.0 createSQLQuery执行原生Sql语句 遇到问题及解决办法集锦
- 一次ORA-4030问题诊断及解决【解决思路不错,说明了对象的统计信息与优化器的优化操作(即选择执行一个SQL语句在该优化参数环境下最佳的执行计划)间的关系】