请教一个SQL update写法的问题。
比如mytable中有A   B   C   D   E   F....等等n个列 
 而具体业务中,有的需要更新AC,有的需要更DEF。 
 在写具体的UpdateTable函数的时候如何写? 
 是写一个函数的N个重载版本吗?那么如果有业务1需要更新AC,业务2需要更新BD,而ABCD都是int的话,怎样写? 
 或者是只写一个UpdateTable(A,B,C,D...)然后在函数中根据情况选择性的拼装?那样的话string等类型容易根据是否为空判断是不是要拼装到具体的Update语句,而数值类型的如何判断? 
 还是封装一个参数类,根据业务赋值以后传递给UpdateTable函数,在函数中从这个类取得字段名,数据,数据类,来构建SQL语句和SQL语句用的参数?
------解决方案--------------------建议用拼sql的方法 
 如果数据是从 界面上 取得更新数据 
 那么 所有的都是字符串  你先不做类型转换 到数据层在转 
------解决方案--------------------把所有字段抽象成一个类 
 向UpdateTable函数传递这个类的一个实例 
 判断后拼装SQL语句或者直接用存储过程
------解决方案--------------------只写一个UpdateTable(A,B,C,D...)然后在函数中根据情况选择性的拼装 
------解决方案--------------------用SQL语句拼接试试啊 
 根据需要来拼出需要的SQL语句来
------解决方案--------------------同意 wt3056(「马儿.快爬!) 建议 
 alter proc Test 
 @type nvarchar(20) 
 ,@a int=null 
 ,@b int=null 
 ,@c int=null 
 ,@d int=null 
 as  
 begin 
 	if @type= 'a ' 
 		select @a 
 	else if @type= 'b ' 
 		select @b 
 end