생성 된 테이블에 항목이 있는지 여부를 알아야합니다.테이블이 비어 있는지 확인하십시오. (MSAccess Database + Delphi)
Function IsTableEmpty:Boolean;
Var
DataSource : string;
Begin
DataSource :=
'Provider=Microsoft.Jet.OLEDB.4.0'+
';Data Source=c:\mydb.mdb'+
';Persist Security Info=False';
Form2.ADOConnection1.ConnectionString := DataSource;
Form2.ADOConnection1.LoginPrompt := False;
Form2.ADOCommand1.Connection := Form2.ADOConnection1;
Form2.ADOTable1.ConnectionString := DataSource;
Form2.ADOTable1.Connection := Form2.ADOConnection1;
if (Form2.ADOTable1.IsEmpty)then
result := true
else
result := false;
End;
그러나이 기능은 테이블의 상태에 관계없이 true를 돌려 : I는 무엇이 필요
, 내가 할 목적으로 작성했습니다 무엇
if (TableIsEmpty) then
do_something
else
do_something_else;
입니다!
편집 *** 수정 된 코드 :
Function IsTableEmpty:Boolean;
Var
DataSource, cs : string;
Begin
DataSource :=
'Provider=Microsoft.Jet.OLEDB.4.0'+
';Data Source=c:\Users.mdb'+
';Persist Security Info=False';
Form2.ADOConnection1.ConnectionString := DataSource;
Form2.ADOConnection1.LoginPrompt := False;
Form2.ADOCommand1.Connection := Form2.ADOConnection1;
Form2.ADOTable1.Connection := Form2.ADOConnection1;
Form2.ADOTable1.TableName := 'userIdentification';
Form2.ADOTable1.Active := True;
cs := 'Select * from userIdentification';
Form2.ADOCommand1.CommandText := cs;
Form2.ADOCommand1.Execute;
if Form2.ADOTable1.RecordCount <= 0 then
result := true
else
result := false;
Form2.ADOConnection1.Close;
End;
이 함수는 항상 false를 반환!
당신은 SQL 테이블에서 선택한 발행 할 수있는 성공적으로 실행 select 문 후 "수 (1) TABLENAME에서 선택"하고 반환하는 방법을 많은 레코드를 참조? –
Adotable을 활성화로 설정하지 않으므로 항상 사실로 나타납니다. ADOTable1.Connection을 사용할 경우 ADOTable1.ConnectionString을 사용하는 BTW는 필요하지 않습니다. – bummi
결과가 false가 아닌 것으로 나타납니다. @ bummi. – Priyabrata