首頁 資料庫 mysql教程 access的批量数据操作

access的批量数据操作

Jun 07, 2016 pm 03:43 PM
access 大量 操作 數位 數據

最近用到access数据库做小软件,无奈是access对数据的批量操作没有mysql方便,曾一度傻傻地用TClientDataSet把服务器返回的xml用LoadFromStream加载进来,再For循环insert到表中,这个笨办法在数据量小的时候可以,毕竟TClientDataSet比xmlDocument用起来方

      最近用到access数据库做小软件,无奈是access对数据的批量操作没有mysql方便,曾一度傻傻地用TClientDataSet把服务器返回的xml用LoadFromStream加载进来,再For循环insert到表中,这个笨办法在数据量小的时候可以,毕竟TClientDataSet比xmlDocument用起来方便,但是数据量大,超过1000就有点不堪重负了。

      首先,TClientDataSet.LoadFromStream在数据量大的时候CPU占用量大,且会造成程序无影响(本想在LoadFromStream中加入sleep()和application.ProgressMessage,但看不懂源码。。),再使用FOR循环(FOR没WHILE占资源,速度快)插入数据库时,痛苦的事情来了,如果每插入一条数据都sleep(1),4000条数据在我电脑上大概需要2分钟,数据多了不敢想像,如不加sleep(),速度要快很多,但是程序占CPU100%,这是用户无法接受的(因为很多用户电脑比我的还差)。废话了这么多,上肉戏:

  在大富翁上看到了关于access的导入、导出方法(不知道是大富翁抽风还是我浏览器抽风,每次打开大富翁都有个 “!”,访问异常),根据我的试验,只有导入、导出txt是最好的办法,因为xml、excel等都提示没有相关DLL。

  总结如下:

  1、导出TXT:  select * into [data.txt] in "E:/DATA" "Text;" from TableName

                                            (存放的TXT名)(存放路径)                    (表名)

          注意:这种方式导出的TXT格式与access中的手动导出的格式不一样,会生成一个schema.ini,相当于设置视图里面的数据

      2、导入到新表:SELECT * INTO TableName FR0M [data.txt] IN "E:/data" "Text;"

          注意:导入到新表需要schema.ini,且TXT格式必须是用1中的语句导出的格式一样

   3、表已经存在, 追加导入:INSERT INTO TableName select * from [data.txt] in "E:/data" "Text;" 

      注意:TXT格式必须是用1中的语句导出的格式一样,可以没有schema.ini

       通过以上方法对access的大量数据的操作,速度快,且不卡。

       欢迎高手指正错误!有不足之处欢迎补充。

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

sql if語句怎麼用 sql if語句怎麼用 Apr 09, 2025 pm 06:12 PM

SQL IF 語句用於有條件地執行 SQL 語句,語法為: IF (condition) THEN {語句} ELSE {語句} END IF;。條件可以是任何有效的 SQL 表達式,如果條件為真,執行 THEN 子句;如果條件為假,執行 ELSE 子句。 IF 語句可以嵌套,允許更複雜的條件檢查。

c#多線程的好處有哪些 c#多線程的好處有哪些 Apr 03, 2025 pm 02:51 PM

多線程的好處在於能提升性能和資源利用率,尤其適用於處理大量數據或執行耗時操作。它允許同時執行多個任務,提高效率。然而,線程過多會導致性能下降,因此需要根據 CPU 核心數和任務特性謹慎選擇線程數。另外,多線程編程涉及死鎖和競態條件等挑戰,需要使用同步機制解決,需要具備紮實的並發編程知識,權衡利弊並謹慎使用。

無法以 root 身份登錄 mysql 無法以 root 身份登錄 mysql Apr 08, 2025 pm 04:54 PM

無法以 root 身份登錄 MySQL 的原因主要在於權限問題、配置文件錯誤、密碼不符、socket 文件問題或防火牆攔截。解決方法包括:檢查配置文件中 bind-address 參數是否正確配置。查看 root 用戶權限是否被修改或刪除,並進行重置。驗證密碼是否準確無誤,包括大小寫和特殊字符。檢查 socket 文件權限設置和路徑。檢查防火牆是否阻止了 MySQL 服務器的連接。

apache怎麼配置zend apache怎麼配置zend Apr 13, 2025 pm 12:57 PM

如何在 Apache 中配置 Zend?在 Apache Web 服務器中配置 Zend Framework 的步驟如下:安裝 Zend Framework 並解壓到 Web 服務器目錄中。創建 .htaccess 文件。創建 Zend 應用程序目錄並添加 index.php 文件。配置 Zend 應用程序(application.ini)。重新啟動 Apache Web 服務器。

如何解決Vue Axios跨域導致的"Network Error" 如何解決Vue Axios跨域導致的"Network Error" Apr 07, 2025 pm 10:27 PM

解決 Vue Axios 跨域問題的方法包括:服務器端配置 CORS 頭使用 Axios 代理使用 JSONP使用 WebSocket使用 CORS 插件

phpmyadmin漏洞匯總 phpmyadmin漏洞匯總 Apr 10, 2025 pm 10:24 PM

PHPMyAdmin安全防禦策略的關鍵在於:1. 使用最新版PHPMyAdmin及定期更新PHP和MySQL;2. 嚴格控制訪問權限,使用.htaccess或Web服務器訪問控制;3. 啟用強密碼和雙因素認證;4. 定期備份數據庫;5. 仔細檢查配置文件,避免暴露敏感信息;6. 使用Web應用防火牆(WAF);7. 進行安全審計。 這些措施能夠有效降低PHPMyAdmin因配置不當、版本過舊或環境安全隱患導致的安全風險,保障數據庫安全。

apache服務器是什麼 apache服務器是乾嘛的 apache服務器是什麼 apache服務器是乾嘛的 Apr 13, 2025 am 11:57 AM

Apache服務器是強大的Web服務器軟件,充當瀏覽器與網站服務器間的橋樑。 1. 它處理HTTP請求,根據請求返回網頁內容;2. 模塊化設計允許擴展功能,例如支持SSL加密和動態網頁;3. 配置文件(如虛擬主機配置)需謹慎設置,避免安全漏洞,並需優化性能參數,例如線程數和超時時間,才能構建高性能、安全的Web應用。

如何利用Debian Apache日誌提升網站性能 如何利用Debian Apache日誌提升網站性能 Apr 12, 2025 pm 11:36 PM

本文將闡述如何通過分析Debian系統下的Apache日誌來提升網站性能。一、日誌分析基礎Apache日誌記錄了所有HTTP請求的詳細信息,包括IP地址、時間戳、請求URL、HTTP方法和響應代碼等。在Debian系統中,這些日誌通常位於/var/log/apache2/access.log和/var/log/apache2/error.log目錄下。理解日誌結構是有效分析的第一步。二、日誌分析工具您可以使用多種工具分析Apache日誌:命令行工具:grep、awk、sed等命令行工具可

See all articles