当前位置:首页
开发技术指南» 文章正文
    引言:
 

 

    摘要: 在一个典型的系统的开发过程中,首先是客户提出需求,设计人员根据需求进行分析和设计,程序员根据设计进行编程,最后是系统的测试和系统的分发。在整个软件过程中,参与到系统的角色各不相同,各种角色之间的关系是既合作又敌对的。系统的客户总希望花更少的前,获取更多的功能。开发公司则相反。开发人员讨厌无停止的改动,客户则认为开发出来的东西总是不满足自己的要求。在开发的过程总需要一个能够折中体现参与到系统......
 ·服务器端如何对待cookie    »显示摘要«
    摘要: 我们知道,向客户端写入的cookie会随着每次页面请求发向 服务器端,但是,发到服务器端之后,服务器会如何处理这些cookie,如果不使用或者使用完这些cookie,会及时释放掉内存吗? ......


有没有这样一条SQL语句(题目字多,但不复杂,各位救命)分不够好商量

7个变量:Po、Ps、Pc、Qo、Qs、Qc、Sr,1-3为输入变量,4-7为输出变量。数据如下:  
        Po         Ps         Pc         Qo         Qs         Qc           Sr        
      (m)       (m)       (m)     (m^3/h)(m^3/h)(m^3/h)  
      80.8     11.4     39.6     42.6     16.5     59.0     .494      
      80.6     11.5     48.7     42.8         .6     43.5     .494      
      80.3     11.3     45.4     42.6       4.5     46.7     .494      
      80.3     10.9     42.9     42.7       7.8     50.0     .494      
    ...........    
      82.5     11.4     39.8     41.8     16.9     58.9     .468      
      82.5     11.4     39.8     41.8     16.9     58.9     .468    
      82.7     11.0     48.5     42.1         .8     43.0     .468    
   
  ...............  
  假设现有实际TSr=0.48,找出要找出的最小值对应的Sr,并在找到的结果集中找到符合条件min[(Po-实际Po)+(Ps-实际Ps)+(Pc-实际Pc)+(Qc-实际Qc)]的那一条记录,并把得到的那一行7个变量值赋予程序中的变量。  
                    m_pRecordset->Open("SELECT   *   FROM   TestDataTable",   theApp.m_pConnection.GetInterfacePtr(),  
  adOpenDynamic,adLockOptimistic, adCmdText);  
  中的"SELECT   *   FROM   TestDataTable"该如何写?如何把值返回给变量?

NO.1   作者: saucer

SELECT   *   FROM   TestDataTable  
  WHERE   Po   +   Ps   +   Pc   +   Qc   =    
        (  
          SELECT   MIN(Po   +   Ps   +   Pc   +   Qc)   FROM   TestDataTable  
          WHERE   Sr   =   (SELECT   MAX(Sr)   FROM   FROM   TestDataTable)    
        )  
 

NO.2   作者: littlepaopao

我建议还是用老办法,把数据集返回到一个矩阵里面,再进行min的操作  
  _variant_t   var;  
  //CString   Po,Ps,Pc,Qo,Qs,Qc,Sr,eta;  
          Mm   mFindResult;  
          mFindResult=zeros(17,7);  
  //   清空列表框  
  //m_listSr.ResetContent();  
  //Po=Ps=Pc=Qo=Qs=Qc=Sr=eta="";  
   
  //   在ADO操作中建议语句中要常用try...catch()来捕获错误信息,  
  //   因为它有时会经常出现一些想不到的错误。jingzhou   xu  
  try  
  {  
  if(!m_pRecordset->BOF)  
  m_pRecordset->MoveFirst();  
  else  
  {  
  AfxMessageBox("表内数据为空");  
  //return;  
  }  
   
  //   读入库中各字段并加入列表框中  
  int   i=1;  
  while(!m_pRecordset->adoEOF)  
  {  
  var   =   m_pRecordset->GetCollect("Po");  
  if(var.vt   !=   VT_NULL)  
  {  
  var.ChangeType(VT_BSTR);  
  mFindResult.r(i,1)   =   var.dblVal;    
  }  
  var   =   m_pRecordset->GetCollect("Ps");  
  if(var.vt   !=   VT_NULL)  
  {  
  var.ChangeType(VT_BSTR);  
  mFindResult.r(i,2)   =   var.dblVal;    
  }  
  var   =   m_pRecordset->GetCollect("Pc");  
  if(var.vt   !=   VT_NULL)  
  {  
  var.ChangeType(VT_BSTR);  
  mFindResult.r(i,3)   =   var.dblVal;    
  }  
  var   =   m_pRecordset->GetCollect("Qo");  
  if(var.vt   !=   VT_NULL)  
  {  
  var.ChangeType(VT_BSTR);  
  mFindResult.r(i,4)   =   var.dblVal;    
  }  
  var   =   m_pRecordset->GetCollect("Qs");  
  if(var.vt   !=   VT_NULL)  
  {  
  var.ChangeType(VT_BSTR);  
  mFindResult.r(i,5)   =   var.dblVal;    
  }  
  var   =   m_pRecordset->GetCollect("Qc");  
  if(var.vt   !=   VT_NULL)  
  {  
  var.ChangeType(VT_BSTR);  
          mFindResult.r(i,6)   =   var.dblVal;    
  }  
  var   =   m_pRecordset->GetCollect("Sr");  
  if(var.vt   !=   VT_NULL)  
  {  
  var.ChangeType(VT_BSTR);  
          mFindResult.r(i,7)   =   var.dblVal;    
  }  
   
  //m_listSr.AddString(Po+"       "+Ps+"       "+Pc+"       "+Qo+"       "+Qs+"       "+Qc+"       "+Sr);  
                          i=i+1;  
  m_pRecordset->MoveNext();  
 


 ·继续    »显示摘要«
    摘要: rt ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE