我以前的代码如下
一个条件上一个页面传过来的
string sqlcode = Session["sql"].ToString();
for(int x = 0;x < colBars;x++)
{
条件
string temp1 = textRow[j,3];
string temp2 = textCol[x,3];
string sqlstr = "select sum(AMOUNT) from "+ table +" where "+ temp1 +" and "+ temp2 +"
and "+sqlcode+"";
}我将如果改成用参数化查询呢????参数化查询能提高查询速度吗?小弟在线等待!!!!谢谢!
一个条件上一个页面传过来的
string sqlcode = Session["sql"].ToString();
for(int x = 0;x < colBars;x++)
{
条件
string temp1 = textRow[j,3];
string temp2 = textCol[x,3];
string sqlstr = "select sum(AMOUNT) from "+ table +" where "+ temp1 +" and "+ temp2 +"
and "+sqlcode+"";
}我将如果改成用参数化查询呢????参数化查询能提高查询速度吗?小弟在线等待!!!!谢谢!
解决方案 »
- oracle 11g 自己建立的listener跟OWB
- oracle8i的数据库恢复,在线等,请各位高手帮忙一下。
- 请问:oracle如何查询没有重复的记录,只查几个字段。
- 关于ORACLE9字符集的问题
- ORA-29861: domain index is marked LOADING/FAILED/UNUSABLE
- 个人遇到的最麻烦的select语句
- 在PL/SQL中,我这样定义游标行吗?
- 关于sql语句,在线等待高手急救!
- 关于exp、imp导入导出的问题
- 求助. 两张没有关系的表该如何比较?
- SOS:oracle数据检索计算后的数字显示问题
- 郁闷中,关于order by 查询效率的问题。。。
where a = :a and b = :b
再赋值就可以了对经常用到查询语句用参数化查询能提高查询速度
String sql="insert into TEST(a,b) values(?,?) ";
PreparedStatement ps=connection.prepareStatement(sql);
ps.setInt(1, 100);
ps.setString(2, "abcde");
ps.executeUpdate();C#:
string sql="insert into TEST(a,b) values(:a,:b) ";
OracleCommand myCommand = new OracleCommand(sql);
myCommand.Parameters.Add("a", 100);
myCommand.Parameters.Add("b", "abcde");
myCommand.ExecuteNonQuery();如所见~ JAVA里使用?, 而C#(C语言)都是用 :变量名 来代表bind parameter
{
try
{
if (conn.State == ConnectionState.Closed)
{
conn.Open();
}
ds = new DataSet();
cmd.CommandText=sqlstr;
oda = new OracleDataAdapter(sqlstr,conn);
OracleCommandBuilder cb = new OracleCommandBuilder(oda);
oda.Fill(ds,"queryname");
}
catch(Exception ee)
{
Console.Write(ee.Message);
}
finally
{
conn.Close();
}
return ds;
}