由两种化合物互相交换成分,生成另外两种化合物的反应,叫做复分解反应.其实质是:发生复分解反应的两种物质在水溶液中相互交换离子,结合成难电离的物质----沉淀、气体、水,即发生复分解反应的条件就是有沉淀生成,或气体生成,或有水生成.
【解析】
A、反应物一种,生成物多种,属于分解反应,所以A错误;
B、KI和AgNO3相互交换成分生成了AgI和KNO3,是复分解反应,所以B正确;
C、反应物两种,生成物一种,属于化合反应,所以C不正确;
D、Na不是化合物属于单质,不符合复分解反应的定义,所以D不正确.
故选B.