Access 数据表分页显示&导入数据库
以 Delphi 开发基于 Oracle/SQL Server 的数据库应用程序,在显示表中数据时,若数据量过大,难免要应用 分页 技术――幸运的是,诸于此两者的大型 DBMS,对 分页 提供了良好的支持,但对 M$Access 来说却要麻烦些――前提自然是 Access 表中没有自增字段―
以 Delphi 开发基于 Oracle/SQL Server 的数据库应用程序,在显示表中数据时,若数据量过大,难免要应用 分页 技术――幸运的是,诸于此两者的大型 DBMS,对 分页 提供了良好的支持,但对 M$ Access 来说却要麻烦些――前提自然是 Access 表中没有自增字段――而这正是关键...
实现步骤:
一、变量定义
FTotalRecCountMDB: Integer; //Access 库中表的记录数
FFieldLstAndType: string; //字段及字段类型列表
FFieldLst: string; //字段列表
二、变量使用(示例)
FFieldLstAndType:= 'Name varchar(255); Age integer; Addr varchar(255)';
FFieldLst:= 'Name; Age; Addr';
三、准备
//创建同结构临时表――多出 ID 自增字段!
//aqy_Tmp 已连接至对应的 Access
with aqy_Tmp do //aqy_Tmp: TADOQuery
begin
Close;
SQL.Text:= 'Create Table _TabTmp(ID Counter PRIMARY KEY,' + FFieldLstAndType + ')';
ExecSQL;
Close;
end;
//将所选的表中的数据 Copy 到临时表
with aqy_Tmp do
begin
Close;
SQL.Text:=
'Insert Into _TabTmp(' + FFieldLst + ')' +
'Select ' + FFieldLst + ' From ' + edt_TabName.Text; //edt_TabName: TEdit;
ExecSQL;
Close;
end;
四、OK,分页显示&导入DB //每 万条 分一页, var
i{, j}: integer;
BatchCount: Integer;
begin
with aqy_Tmp do
begin
if FTotalRecCountMDB begin
if Active then
Close;
SQL.Text:= 'select * from _TabTmp';
Open;
//then import datas into DB
{while not Eof do
...
Next;
}
end
else
begin
if FTotalRecCountMDB mod 10000 = 0 then
BatchCount:= FTotalRecCountMDB div 10000
else
BatchCount:= FTotalRecCountMDB div 10000 + 1;
for i:= 0 to BatchCount - 1 do
begin
if Active then
Close;
//分页
SQL.Text:=
'select * from _TabTmp where ID Between ' +
IntToStr((i * 10000) + 1) + ' and ' + IntToStr((i + 1) * 10000);
Open;
//other codes that import datas to DB
{while not Eof do
...
Next;
}
end; //end for loop
end; //batch end
//delete _TabTmp
if Active then
Close;
SQL.Text:= 'Drop Table _TabTmp';
ExecSQL;
Close;
end; //end with aqy_Tmp
end;
OK,Done!
实际应用中当然至少还应加进 异常处理,及 Application.ProcessMessages 以免在导数据入库过程中程序假死~
ADelphiCoder

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











1. Windows 11에서 설정을 엽니다. Win+I 단축키나 다른 방법을 사용할 수 있습니다. 2. 앱 섹션으로 이동하여 앱 및 기능을 클릭합니다. 3. 백그라운드에서 실행되는 것을 방지하려는 애플리케이션을 찾으세요. 점 3개 버튼을 클릭하고 고급 옵션을 선택합니다. 4. [백그라운드 애플리케이션 권한] 섹션을 찾아 원하는 값을 선택하세요. 기본적으로 Windows 11은 전원 최적화 모드를 설정합니다. 이를 통해 Windows는 애플리케이션이 백그라운드에서 작동하는 방식을 관리할 수 있습니다. 예를 들어, 배터리를 절약하기 위해 배터리 절약 모드를 활성화하면 시스템은 모든 앱을 자동으로 닫습니다. 5. 애플리케이션이 백그라운드에서 실행되는 것을 방지하려면 [안함]을 선택합니다. 프로그램이 알림을 보내지 않거나 데이터를 업데이트하지 못하는 경우 등을 확인할 수 있습니다.

System76은 최근 8월 8일 Pop!_OS의 차기 주요 알파 빌드와 함께 출시될 예정인 Cosmic 데스크탑 환경으로 큰 파장을 일으켰습니다. 그러나 System76 CEO인 Carl Richell이 X에 대한 최근 게시물에서 Cosmic DE가 다음과 같은 정보를 제공했습니다. 개발자

DeepSeek은 파일을 PDF로 직접 변환 할 수 없습니다. 파일 유형에 따라 공통 문서 (Word, Excel, PowerPoint) : Microsoft Office, LibreOffice 및 기타 소프트웨어를 사용하여 PDF로 내보내십시오. 이미지 : 이미지 뷰어 또는 이미지 처리 소프트웨어를 사용하여 PDF로 저장하십시오. 웹 페이지 : 브라우저의 "PDF로 인쇄"기능 또는 전용 웹 페이지에서 PDF 도구를 사용하십시오. 드문 형식 : 오른쪽 변환기를 찾아 PDF로 변환하십시오. 올바른 도구를 선택하고 실제 상황에 따라 계획을 개발하는 것이 중요합니다.

Oracle은 다음 단계를 통해 dbf 파일을 읽을 수 있습니다. 외부 테이블을 만들고 dbf 파일을 참조하여 데이터를 Oracle 테이블로 가져옵니다.

Apple의 최신 iOS18, iPadOS18 및 macOS Sequoia 시스템 릴리스에는 사진 애플리케이션에 중요한 기능이 추가되었습니다. 이 기능은 사용자가 다양한 이유로 손실되거나 손상된 사진과 비디오를 쉽게 복구할 수 있도록 설계되었습니다. 새로운 기능에는 사진 앱의 도구 섹션에 '복구됨'이라는 앨범이 도입되었습니다. 이 앨범은 사용자가 기기에 사진 라이브러리에 포함되지 않은 사진이나 비디오를 가지고 있을 때 자동으로 나타납니다. "복구된" 앨범의 출현은 데이터베이스 손상으로 인해 손실된 사진과 비디오, 사진 라이브러리에 올바르게 저장되지 않은 카메라 응용 프로그램 또는 사진 라이브러리를 관리하는 타사 응용 프로그램에 대한 솔루션을 제공합니다. 사용자는 몇 가지 간단한 단계만 거치면 됩니다.

MySQLi를 사용하여 PHP에서 데이터베이스 연결을 설정하는 방법: MySQLi 확장 포함(require_once) 연결 함수 생성(functionconnect_to_db) 연결 함수 호출($conn=connect_to_db()) 쿼리 실행($result=$conn->query()) 닫기 연결( $conn->close())

PHP에서 데이터베이스 연결 오류를 처리하려면 다음 단계를 사용할 수 있습니다. mysqli_connect_errno()를 사용하여 오류 코드를 얻습니다. 오류 메시지를 얻으려면 mysqli_connect_error()를 사용하십시오. 이러한 오류 메시지를 캡처하고 기록하면 데이터베이스 연결 문제를 쉽게 식별하고 해결할 수 있어 애플리케이션이 원활하게 실행될 수 있습니다.

최근 삼성디스플레이와 마이크로소프트(MS)가 중요한 협력 협약을 체결했다. 이번 협약에 따라 삼성디스플레이는 수십만 개의 혼합현실(MR) 헤드마운트 기기용 OLEDoS 패널을 개발해 마이크로소프트에 공급하게 된다. 마이크로소프트는 게임, 영화 등 멀티미디어 콘텐츠용 MR 기기를 개발할 예정이다. OLEDoS 사양이 확정된 후 출시될 예정이며, 주로 상업용 분야에 서비스를 제공할 예정이며, 이르면 2026년에 출시될 것으로 예상됩니다. OLEDoS(OLED on Silicon) 기술 OLEDoS는 실리콘 기판에 OLED를 증착하는 새로운 디스플레이 기술로, 기존 유리 기판에 비해 더 얇고 픽셀이 높습니다. OLEDoS 디스플레이와 일반 디스플레이
