make2855 发表于 2019-11-7 20:58:32

AU3的UDF是没有考虑速度的,可以自己改一下,Sqlite本身是很快的,可能放到数组里面的时候速度慢了,au3脚本循环是很慢的,还有频繁变更数组大小,这个你也发现了。

f4李文杨 发表于 2019-11-12 13:47:19

sqlite好用,但是用不好,就会出问题!后面我都用 MDB与mysql 了!这两种了!!

junziyeaicai 发表于 2019-11-21 11:35:20

楼主是个执着的人,顶了。

yohoboy 发表于 2019-12-15 01:17:07

询问一下 INSERT INTO "test"("%s") VALUES ("%s") 这指令是否有详细的用法,
我也有组数写入问题,1W读取后写入组数,
-----------------
Local $c = 0
_SQLite_Query(-1, "SELECT* FROM money ORDER BY date ASC" ,$hQuery)
While _SQLite_FetchData ($hQuery, $aRow,False,False) = $SQLITE_OK
    $arraydata[$c] = $aRow
    $arraydata[$c] = $aRow
    $arraydata[$c] = $aRow
    $arraydata[$c] = $aRow
    $arraydata[$c] = $aRow
    $arraydata[$c] = $aRow
    $arraydata[$c] = $aRow
    $arraydata[$c] = $aRow

        $arraydata[$c] = $i
        $c += 1

        $j = ($i / $tempmno2) *100
    GUICtrlSetData($idProgressbar1, $j)
        GUICtrlSetData($k, $i)
        $i = $i + 1
WEnd
----- 已上部分代码

可以使用_ArrayDisplay($arraydata) 显示已排列的组数。但是却无法写入??

是否我有用错什么代码吗?
-----
;將讀取的資料逐一寫入 money2 資料表內
        _SQLite_Exec ( -1,'BEGIN;' )
       
        _SQLite_Exec(-1, "Insert into money2 values ('" & $arraydata & "');")
        _SQLite_Exec ( -1,'COMMIT;' )
----- 写入数据库

heavenm 发表于 2019-12-15 10:42:58

yohoboy 发表于 2019-12-15 01:17
询问一下 INSERT INTO "test"("%s") VALUES ("%s") 这指令是否有详细的用法,
我也有组数写入问题,1W读取 ...
_ArrayToString($arraydata, ",")
应该把数组转化为字符串,不是数组

iwuzhiwei 发表于 2019-12-15 13:04:55

学习ing            

yohoboy 发表于 2019-12-16 23:59:26

_SQLite_Query(-1, "SELECT* FROM money ORDER BY date ASC" ,$hQuery)
While _SQLite_FetchData ($hQuery, $aRow,False,False) = $SQLITE_OK
        $TEXT = StringStripCR($aRow)
    $arraydatac &= "Insert into money2 values ('" & $i & "','" & $aRow & "','" & $aRow & "','" & $aRow & "','" & $aRow & _
                                        "','" & $aRow & "','" & $TEXT & "','" & $aRow & "');" & @CRLF
        $j = ($i / $tempmno2) *100
    GUICtrlSetData($idProgressbar1, $j)
        GUICtrlSetData($k, $i)
        $i += 1
WEnd
_SQLite_Exec ( -1,'begin;' )
_SQLite_Exec(-1, $arraydatac );<----配合_SQLite_Query ,預先將查詢後的資料重整並寫入字串處理。
_SQLite_Exec ( -1,'commit;' )

----以上部分代碼,1w5條短時間重整寫入,感謝協助。
页: 1 [2]
查看完整版本: 每天处理3W条左右的SQLITE,差不多要两个小时,研究效率写入方法!