求助,急!(100分)

  • 主题发起人 邻家小妹
  • 开始时间

邻家小妹

Unregistered / Unconfirmed
GUEST, unregistred user!
我要计算表中的收入或支出的金额总数(通过一个comboBox控件来选择),结果在一TextBox中显示,代码如下:
DataSet ds=new DataSet();
SqlDataAdapter da=new SqlDataAdapter("SELECT * FROM Table1",sqlConn);
da.SelectCommand.CommandText="SELECT SUM('%" + comboBox1.Text + "%')FROM Table1";
da.Fill(ds);
TextBox1.Text=ds.Tables[0].Rows[0][0].ToString();
运行代码不能通过,但把第二句改为:
da.SelectCommand.CommandText="SELECT SUM(收入)FROM Table1";
就能通过了,要怎样才能在sql语句中加入这个comboBox.Text???
 
送参数吧:
da.SelectCommand.CommandText="SELECT SUM('%' + :textPara + '%') FROM Table1";
把参数textPara赋值即可
 
da.SelectCommand.CommandText='SELECT SUM(%'+comboBox1.Text+'%)FROM Table1';
应该就可以了。
 
da.SelectCommand.CommandText="SELECT SUM(" + comboBox1.Text + ") FROM Table1";
 
da.SelectCommand.CommandText="SELECT SUM(" + comboBox1.Text.Trim() + ") FROM Table1";
 
sql语句中的sum必须是指明列。
也就是说sum(收入)而不能加sum(%收入%)
 
to astart:"收入"当然是Table1中的一列,轻舞肥羊和Endy.Vee的方法可以,真搞不懂,为什么在这里又不要"%"?
 
%通配符
 
你应该先考虑清楚"%"是做什么用的[:)]
 
“收入”是代表一个字段。
而“%收入%”是代表字段名里包含有收入的所有字段。
Sum()只能处理一个字段。
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
802
import
I
I
回复
0
查看
1K
import
I
I
回复
0
查看
3K
import
I
顶部