有关查询时输入条件为空的处理解决方案

有关查询时输入条件为空的处理
关于数据库的查询,界面上可以输入查询条件,如时间、地点、姓名等等,查询语句则可为select * from table where 时间='xxxx',地点='xxxx',姓名='xxxx'

  我想问的就是如果其中一项输入为空,则忽略这个查询条件,请问这个怎么实现方便呢?

------解决方案--------------------
就判断一下行啦,比如像下面这样(伪码):
C/C++ code

CString sql="select * from table where 1=1";
if (时间不为空) sql = sql + "时间='xxx'";
if (地点不为空) sql = sql + ",地点='xxx'";
if (姓名不为空) sql = sql + ", 姓名='xxx'";

------解决方案--------------------
C/C++ code
if(时间不为空&&地点不为空&&姓名不为空)
{
select * from table where 时间='xxxx',地点='xxxx',姓名='xxxx' 
}

------解决方案--------------------
探讨
引用:就判断一下行啦,比如像下面这样(伪码):C/C++ code CString sql="select * from table where 1=1";if (时间不为空) sql= sql+"时间='xxx'";if (地点不为空) sql= sql+",地点='xxx'";if (姓名不为空) sql= sql+", 姓名='xxx'";如果我的条件很多,?-