如何使用IF ELSE进行匹配,如何从数据库中检索数据并进行比较。 VFP 9

时间:2014-02-22 05:48:03

标签: foxpro visual-foxpro

如何比较foxpro 9中数据库中是否已存在数据。 如果(如果找到)  员工已经存在。 其他  将员工插入数据库。

2 个答案:

答案 0 :(得分:0)

你的问题在“已经存在”上过于模糊。如果您正在寻找一名员工“约翰史密斯”,巧合的是,您是一个大型组织,其中有几个“约翰史密斯”的名字......你还有其他标准吗?如社会安全号码,出生日期信息等?如果是这样,您可以运行类似的查询。

lookForSSN = "123-45-6789"
use in select( "C_IsOnFile" )
select SomeIDColumn ;
   from YourEmployeeTable ;
   where SocSecNum = lookForSSN;
   into cursor C_IsOnFile

if reccount( "C_IsOnFile" ) = 1
   */ Already on file, you can update it
   update YourEmployeeTable;
      set FirstName = FirstNameVar,;
          LastName = LastNameVar,;
          DoB = DoBVar,;
          etc = etcVar;
      where ;
         SSN = lookForSSN
else 
   */ Not on file, add it
   insert into YourEmployeeTable ;
      ( FirstName, LastName, DoB, SSN, etc );
      values;
      ( FirstNameVar, LastNameVar, DoBVar, lookForSSN, etcVar )

endif
*/ close temp cursor when finished
use in select( "C_IsOnFile" ) 

答案 1 :(得分:-1)