clientdataset查询结果老是全部记录

clientdataset查询结果总是全部记录。
     AnsiString strID="Select * from Pacient where P_ID='";
     strID+= ComboBox1->Text;
     strID+="'";

     DataModule2->ClientDataSet1->Active=false;
     DataModule2->DCOMConnection1->Connected=false;
     DataModule2->ClientDataSet1->CommandText=strID;
     DataModule2->DCOMConnection1->Connected=true;
     DataModule2->ClientDataSet1->Active=true;

     ShowMessage(DataModule2->ClientDataSet1->RecordCount);
显示出的查询结果总是全部,不知道是哪里出问题了,谢谢了。

------解决方案--------------------
看看表里P_ID是怎么个情况,看语句不该呀