1. 델파이에서는 조도 및 첨부 가능한 사용
Adoconnection and Adotable은 많은 책에서 가르치는대로 Delphi의 데이터베이스 (SQLServer를 사용)에 연결하도록 설정되었으며 달리기에는 아무런 문제가 없습니다. 그런 다음이를 수정했습니다. 목적은 Delphi에서 Adoconnection의 ConnectionString 속성을 수정하지 않고 Connection 데이터베이스를 수정하는 것입니다. 연결 대화 상자가 나타나지 않습니다.
수정 단계 : LoginPrompt를 False로 설정하고 ConnectionsTring 속성을 지우고 연결 코드를 추가하십시오.
SOTT : = '제공자 = SQLOLEDB.1; password = 1982072019; user id = sa; 초기 카탈로그 = Storagemanagement; 데이터 소스 = 10.16.99.175';
노력하다
loginform.tempadoconnection.connectionstring : = 구제;
loginform.tempadoconnection.connected : = true;
제외하고
MessagedLg ( '데이터베이스 연결이 잘못되었습니다 !! dataconfig.xml', mtconfirmation, [mbok], 0);
응용 프로그램.
끝;
이런 식으로 프로그램이 실행될 때 데이터베이스에 연결하는 데 아무런 문제가 없습니다. 그러나 발생하는 문제는 Dlephi의 adotable 컨트롤에서 ConnectionString 속성에 가치가 없기 때문에 테이블에 연결할 수 없다는 것입니다. 오류는 "유효하지 않은 인증 명세서"로보고됩니다. Delphi에서 Adoconnection 및 Adotable Control을 사용하고 성가신 연결 대화 상자를 피하십시오.
2. 델파이에서 SQL 문을 사용하십시오.
SQL 문에는 문자열에 값을 할당하기 위해 이중 인용문이 필요하기 때문에 문자열은 델파이의 단일 따옴표로 둘러싸여 있으므로 사용하는 몇 가지 문제가 발생했습니다. 내 실험의 결과는 SQL 문의 이중 인용 대신 두 개의 단일 따옴표가 Delphi에서 사용된다는 것입니다. 그것이 옳은지 모르십니까?
나는 아직도 그것을 사용하는 방법을 정확히 모른다.
3. Delphi 7.0의 AdoQuery를 사용하여 결과를 반환합니다.
사용 후 오류를보고했지만 오류없이 이러한 방식으로 사용하는 CD 프로그램이 있습니다. 매개 변수 [ 'xxxx']를 사용하고 있으며 .asstring을 사용할 수 없습니다
4. 원본 코드 :
=================================================== ===========================================
Caninsert라면
시작하다
AllDatAmodule과 함께 .aq_othermaterielout
시작하다
닫다;
SQL. 청소;
sql.text : = '다른 메이트 리엘 아웃 삽입 (Materielid, 양) 값 (: insertid, : insertamount,);
매개 변수 [0] .Value : = MyMateriel;
매개 변수 [1] .Value : = MyAmount;
execsql;
끝;
AllDatAmodule.aq_othermaterielstock과 함께
시작하다
닫다;
SQL. 청소;
sql.text : = '업데이트 기타 메이트 리엘 스톡 세트 금액 = 금액-: updateId = : updateId';
매개 변수 [0] .Value : = MyAmount;
매개 변수 [1] .Value : = MyMateriel;
execsql;
끝;
재료 로우 포맷 .Close;
끝;
이 코드 후
AllDatAmodule과 함께 .aq_othermaterielout
시작하다
닫다;
SQL. 청소;
sql.text : = '업데이트 기타 메이트 리엘 스톡 세트 금액 = 금액-: updateId = : updateId';
매개 변수 [0] .Value : = MyAmount;
매개 변수 [1] .Value : = MyMateriel;
execsql;
끝;
사용할 수있는 제어 목록을 자동으로 표시하는 기능은 AllDatamodule과 함께 사용할 수 없지만 뒤에있는 코드를 여전히 작동하도록했습니다. 무슨 일이야?