Trình Tạo SQL và truy vấn Cơ Sở Dữ Liệu SQLite – SQLite Builder
1/ Sau một thời gian nghiên cứu tham khảo từ VBA To VB6 To Delphi … Cách truy vấn cơ sở dữ liệu SQLite thì Mạnh Viết Tools SQLite build ( là bản Demo chưa hoàn thiện đang thử nghiệm )
Úp tặng cho Bạn nào có như cầu sử dụng Build SQL và truy vấn cơ sở dữ liệu SQLite
2/ đang trong quá trình thiết kế và viết thêm chưa hoàn thiện … Vì vậy lỗi phát sinh là đương nhiên vv … nếu quá trình sử dụng có lỗi vui lòng mô tả lỗi + chụp hình úp lên đây càng tốt ===> Xin cảm ơn
3/ trong quá trình sử dụng bạn nào có mong muốn và yêu cầu gì cứ nêu … nếu Mạnh xét thấy làm được và phù hợp sẻ điều chỉnh lại code
4/ Sau khi hoàn thiện mọi cái sẻ chuyển nó vào DLL COM Delphi buil thành 1 bản là Addins cho Excel và 1 bản là Tools EXE
Rất mong người sử dụng và các bạn tham gia ý kiếm thêm … nếu trong khả năng code của Mạnh thì Mạnh sẻ viết thêm và điều chỉnh lại cho Phù hợp
5/ Giao diện của SQLite For Database như sau
2167
Trình tự truy vấn cở sở dữ liệu SQLite to Excel
2166
Tiếp tục thử nghiệm Demos thứ 2
1/ Gộp SQLite + Access + Excel vào 1 ( Tức sử dụng 1 hàm cho 3 cở sở dữ liệu khác nhau )
2/ Thêm SQL Ms Server vào chung 1 Form
3/ Hoàn toàn ko sử dụng ADODB của Ms để truy xuất dữ liệu ….
…….
Mục số 3 nếu Bạn nào có máy Mac + Linux … vui lòng thử dùm xem có sử dụng được hay không …
Vì Mạnh ko có ( Nếu có lỗi vui lòng chụp hình + Mô tả lỗi )
Hình ảnh sơ bộ như sau
1/ SQL Cho SQLite + Access + Excel
2168
2/ SQL cho Ms Server
2169
3/ Sẻ từng bước hoàn thiện SQL TCP/IP vào tiếp chung 1 Form sau … vì lý do kỹ thuật còn nhiều thứ chưa thực hiện được
Mới cập nhật thêm 1 tính năng hổ trợ tìm kiếm file trong Folder
File đã úp lại bài số 3 … Tính úp lại files bài số 1 mà bị khóa ko cho úp ( quản lý kiểu chiếm dụng và đối phó thì ta sẻ úp Google Driver thôi … xong ko thích thì Delete là xong)
Sau bài này sẻ ko bao giờ úp file lên đây nữa … mọi files cho Úp Google là xong
Hình ảnh minh họa
2171
Thông báo mới cập nhật thêm 1 tính năng mới tìm kiếm file Extension tại ComboBox
Hình Ảnh
2172
Vui lòng tải file mới nhất link sau ( Lưu ý : File có giá trị trong 1 khoãng thời gian nhất định xong sẻ Delete và thay thế File mới khi có tính năng mới)
Công cụ tuyệt vời đó bạn, bạn học bên bờ lu sót á, học xong mà viết được như này là xuất sắc đó. Đang tính đi học một khóa về vê bê a, chắc bên đó dạy ổn lắm đây.
Nếu có thời gian và điều kiện cho phép … cố giắng theo học 1 lớp nào đó của ai đó mà mình xét thấy 1 vài tiêu chí phù hợp thì học vvv
và quan trọng nhất là nổ lực cố giắng của bản thân …. Học Delphi ko khó lắm cố giắng bước qua cái cơ bản ban đầu là viết Ok
trên Delphi nó có hết mọi cái … code nhìn diết thì nó gần như VBA vậy … Delphi có 1 vài thứ hay mà trên các Tools khác không có hay chưa có
1/ Nó hổ trợ Viết API + Form + Control trên 1 Tools duy nhất vv…
2/ nó hổ trợ lập trình nhóm Or cộng đồng chia sẻ code với nhau = *.dcu ( Như Module trên VBA ) thành viên khác sử dụng ok mà ko mất bản quyền của mình
3/ nó hổ trợ đa nền tảng mà cộng đồng quốc tế hướng tới
4/ mã hóa tốt + bảo mật mạnh + mã máy vvv…
…
trên thế giới tới thời điểm hiện tại có 2 ngôn ngữ có thể lập trình ra API đó là C++ & Delphi … C++ thì viết API thuần ko có hổ trợ Form +…
Học gì hay làm gì thì tùy vào khả năng và sở thích của Bạn + nổ lục cố giắng của bản thân thì sẻ vượt qua tất cả
Tặng các Thành Viên GPE 1 hàm API duy nhất truy xuất 3 cở sở dữ liệu khác nhau
1/ Excel
2/ Access
3/ SQLite
4/ Copy File SQLBuilderLibrary.dll vào: C:WindowsSystem32 …. và sử dụng
5/ sử dụng DLL 32bit và DLL 64 bit … theo Office_x32 Or Office_x64
Viết kiểu SQL chỉ thay đổi tham số SQL và sử dụng
Code Mẫu như sau
Rem ==========
Declare PtrSafe Sub GetSQLDataBase Lib "SQLBuilderLibrary.dll" _
(ByVal aPath As Variant, ByVal SQL As Variant, _
ByVal Target As Variant, ByRef TieuDe As Boolean)
Rem ==========
Sub Excel_GetSQLDataBase()
Dim aPath As Variant, SQL As Variant
Dim Targer As Variant
SQL = "select * from [NhapXuatTon$]" ''Cho Excel
aPath = "D:Database_ServerData.xlsx"
Cells.Clear
Call GetSQLDataBase(aPath, SQL, [A5], True) ''True = lay Tieu de; False = Ko lay Tieu de
End Sub
Rem ==========
Sub SQLite_GetSQLDataBase()
Dim aPath As Variant, SQL As Variant
Dim Targer As Variant
SQL = "select * from [NhapXuatTon]"
aPath = "D:Database_ServerDB_SQLiteQLBHPN.sqlite" ''Sho SQLite
Cells.Clear
Call GetSQLDataBase(aPath, SQL, [A5], False) ''True = lay Tieu de; False = Ko lay Tieu de
End Sub
Rem ==========
Sub Access_GetSQLDataBase()
Dim aPath As Variant, SQL As Variant
Dim Targer As Variant
SQL = "select * from [NhapXuatTon]"
aPath = "D:Database_ServerDataBase_4.accdb" ''Cho Access
Cells.Clear
Call GetSQLDataBase(aPath, SQL, [A5], False) ''True = lay Tieu de; False = Ko lay Tieu de
End Sub
Rem ==========
drive.google.com/file/d/19VjrENjgPK_4UkgBVjAfeyq8QPWP41UO/view?usp=sharing
đang cố giắng hoàn thiện cái Addins cho Excel sẻ bao gồm như sau
năm ngoái cũng viết SQL mà viết thuần ADODB … sang năm nay code khá hơn 1 chút bỏ luôn ADODB của Ms mà sử dụng FireDAC của Delphi viết chạy đa nền tảng cho phẻ
1/ SQL cho Excel
2/ SQL cho Access
3/ SQL cho SQLite
4/ SQL cho Ms Server
tất cả chỉ sử dụng 1 cái Form duy nhất
…..
đang từng bước cho tiếp SQL TCP/IP vào nữa mà lỗi + đơ …. U cả đầu vì nó ( sẻ xong thôi còn khi nào thì chưa biết …. Trên VB6 thì OK đấy, còn Delphi = U đầu )
Hình ảnh như sau ko biết có ai iu em nó ko Mạnh hoàn thiện xong cho ko biếu ko luôn mà sử dụng
nó rất thân thiện trong việc sử dụng chỉ tích chọn + Tìm kiếm files đệ quy trong Folder +…vv
2173
Khỏi cần Addins được không anh. Tạo nó thành phần mềm chạy độc lập luôn.
nó sẻ có 3 Files trong 1 Folder như sau
1/ SQLBuilderLibrary.dll = là 1 thư viện hàm API Sẻ Exports 1 số hàm cơ bản ra ngoài cho ai đó thích thì xài Or các lập trinh viên xài miễn phí ko cá nhân hóa bất cứ cái gì chỉ Copy vào System là sử dụng như bài số 11
2/ ExcelTools.dll = Là 1 COM Delphi Addins cho Excel nếu ai đó ko biết lập trình thì đăng ký File này là cứ thế sử dụng như hình bài số 12
3/ SQLBuilderLibrary.EXE = là 1 file EXE chạy độc lập chỉ copy và sử dụng
Mục đích viết như vậy là cho phổ biến rộng + sâu tới mọi đối tượng sử dụng thôi mà
Addins cho Excel – SQL Builder bao gồm:
1/ Excel
2/ Access
3/ SQLite
4/ Ms Server
5/ Tiện ích Copy Files ( Vì sử dụng tìm kiếm tiện đó cho thêm vào Vì Form còn trống )
…
Exports ra 2 hàm API cơ bản chỉ Copy File SQLBuilderLibrary.dll vào
C:WindowsSystem32SQLBuilderLibrary.dll và sử dụng…
sẻ từng bước xuất thêm như hàm lấy List TableName + EXE + …
Rem ==========
Declare PtrSafe Sub GetSQLDataBase Lib "SQLBuilderLibrary.dll" _
(ByVal aPath As Variant, ByVal SQL As Variant, _
ByVal Target As Variant, ByRef TieuDe As Boolean)
Rem ==========
Sub Excel_GetSQLDataBase()
Dim aPath As Variant, SQL As Variant
Dim Targer As Variant
SQL = "select * from [NhapXuatTon$]" ''Cho Excel
aPath = "D:Database_ServerData.xlsx"
Cells.Clear
Call GetSQLDataBase(aPath, SQL, [A5], True) ''True = lay Tieu de; False = Ko lay Tieu de
End Sub
Rem ==========
Sub SQLite_GetSQLDataBase()
Dim aPath As Variant, SQL As Variant
Dim Targer As Variant
SQL = "select * from [NhapXuatTon]"
aPath = "D:Database_ServerDB_SQLiteQLBHPN.sqlite" ''Sho SQLite
Cells.Clear
Call GetSQLDataBase(aPath, SQL, [A5], True) ''True = lay Tieu de; False = Ko lay Tieu de
End Sub
Rem ==========
Sub Access_GetSQLDataBase()
Dim aPath As Variant, SQL As Variant
Dim Targer As Variant
SQL = "select * from [NhapXuatTon]"
aPath = "D:Database_ServerDataBase_4.accdb" ''Cho Access
Cells.Clear
Call GetSQLDataBase(aPath, SQL, [A5], False) ''True = lay Tieu de; False = Ko lay Tieu de
End Sub
Rem ==========
Declare PtrSafe Sub GetSQLServer Lib "SQLBuilderLibrary.dll" _
(ByVal IpServer As Variant, _
ByVal UserId As Variant, _
ByVal Password As Variant, _
ByVal SQL As Variant, _
ByVal Target As Variant, _
ByRef TieuDe As Boolean)
Rem ==========
Sub Ms_GetSQLServer()
Dim ServerName As Variant
Dim DatabaseName As Variant
Dim UserId As Variant
Dim Password As Variant
Dim SQL As Variant
ServerName = "192.168.1.9"
DatabaseName = "KieuManh"
UserId = "KieuManh"
Password = "KieuManh"
SQL = " select * from [KieuManh ]"
Cells.Clear
Call GetSQLServer(ServerName, UserId, Password, SQL, [A5], True) ''True = lay Tieu de; False = Ko lay Tieu de
End Sub
Rem ==========
Là bản Demo chưa Hoàn thiện sẻ từng bước hoàn thiện theo thời gian
Link tải File có giá trị trong 1 giai đoạn phát triển nhất định xong sẻ Delete thay thế cái mới khi cập nhật code mới
drive.google.com/file/d/1GxJDzQwXUl8_dZQDZKx0bmHroOKv8zvc/view?usp=sharing
Hình ảnh Minh họa như sau mọi vấn đề lấy dữ liệu chỉ việc tích chọn nếu chưa thành thạo SQL
Hổ trợ tìm kiếm files trên PC rất nhanh …. lấy file nào chỉ việc kích chuột hay nháy đúp là Open Path files đó
2174
Video Demo
JGQx3FmRehs
Mình cài đặt theo hường dẫn, nhưng bị lỗi như hình
Cái File ExcelTools.dll nó ko tìm thấy File SQLBuilderLibrary.dll trong cùng Folder đó mà
khắc Phục
1/ nếu bạn muốn sử dụng mấy hàm API thì copy File SQLBuilderLibrary.dll này vào C:WindowsSystem32SQLBuilderLibrary.dll và sử dụng nó
2/ Nếu máy bạn là Officex32 thì Copy nguyên Folder Win32 vào đâu đó tùy bạn xong chay Files Register_ExcelTools_RunAs.vbs xong Chọn Yes là OK
3/ trường hợp của bạn Copy lại Files SQLBuilderLibrary.dll vào chung Folder với Files ExcelTools.dll là Ok
Lưu ý:
1/ File ExcelTools.dll là một COM Delphi Addins nên Phải đăng ký mới sử dụng OK
2/ SQLBuilderLibrary.dll là 1 API chỉ copy và sử dụng
3/ 2 Files trên luôn đi cùng nhau trong Một Folder mới sử dụng được
4/ Tôi mới úp lại File bài số 17 Fix lỗi Form … Bạn có thể tải lại Copy vào Folder đã đăng ký thay thế Files củ là xong
giao diện Form thay đổi 1 chút so với trước
2174
Vẫn bị lỗi bạn ơi
Mình copy tất cả Folder Win32, … và đăng ký nhưng vẫn báo lỗi
P/s: Mình dùng Win 10 (64bit) – Office 365
1/ Bạn thử Copy cái Folder Win64 vào C: Win64
2/ xong trong Folder đó chạy File Register_ExcelTools_RunAs.vbs => chọn Yes khi có thông báo Của Windows
3/ Lưu ý trong Folder đó luôn Luôn có 2 Files đi kèm nhau là SQLBuilderLibrary.dll và ExcelTools.dll
4/ Hoặc bạn Run As Excel.EXE xong vào COM Add-ins Add Files ExcelTools.dll đó vào là Ok
Xem hình
2176
Cái DLL đó nó đi theo Office 32 bit hay 64 bit chứ nó ko quan tâm Windows 32 bit hay 64 bit
1/ Nếu máy của Bạn cài Office 32 bit thì sử dụng Files trong Foder Win32
2/ Nếu máy của Bạn cài Office 64 bit thì sử dụng Files trong Foder Win64
Mình mới tinh chỉnh lại code 1 chút + Viết lại files hướng dẫn … nhiều khi đề Win32 với Win64 sẻ làm cho ai đó hiểu lầm
Khi viết DLL thì nó chỉ quan tâm ứng dụng sử dụng nó là 32 bit hay 64 bit mà thôi
Vì vậy mình sửa lại là Office_x32bit và Office_x64bit cho bớt nhầm lẫn
Bạn nào sử dụng thì tải lại File nhé … nhớ đọc file HuongDan.txt 1 chút
Office 32 bạn. Và mình làm trong thư mục Win32 luôn
1/ Bạn xóa hết tất cả các Files cũ đã copy vào đâu đó
2/ Tải file mới về Copy Folder Office_x32bit vào C: Office_x32bit
Xong thực hiện như sau:
1/ chạy Files Register_ExcelTools_RunAs.vbs … xong Chọn Yes
2/ Kích chuột phải vào File SQLBuilderLibraryCopyTo_System.bat xong chọn Run As Administrator xong chọn Yes
Bạn thử vào theo dường dẫn này xem có File DLL đó ko C:WindowsSystem32SQLBuilderLibrary.dll
nếu chưa có thì copy vào đó xem sao … xong mình tính tiếp
Có file đó bạn (Trong video khúc gần cuối mình có vào Kiểm tra xem có file không đó bạn)
đó ko phải là lỗi mà Mình viết 2 cái DLL nó liên kết hàm với nhau để sử dụng thôi … do nó ko tìm thấy File kia nên báo vậy
Bạn thử copy cái File SQLBuilderLibrary.dll vào Folder như hình sau xem sao nha
NHớ copy Files trong Folder này Office_x32bit
2177
Lỗi ko sử dụng được trên Office 365 là chính xác …. do liên kết 2 DLL với nhau ko tìm thấy
đã tìm ra cách xử lý chạy trên các phiên bản Office khác nhau từ Office2010_x32 – x64 To Office 365_x32 – x64 chạy tốt
Tôi mới Fix lại lỗi trên Office 365 Bạn nào dùng thì tải lại Files
Lưu ý đăng ký sử dụng bạn phải có quyền Admin trên PC đó
xem Hình
Run As Excel.EXE xong Add nó vào là Xong
1/ Là bản Demo đang còn phát triển tiếp … nên có lỗi là đương nhiên => vui lòng mô tả lỗi + chụp hình càng tốt
2/ Nếu bạn nào có đề xuất viết thêm gì cứ nêu … nếu trong khả năng của mình và phù hợp với cái chung nhất mình sẻ viết cho
21792178
Xin cảm ơn
Mình cài được rồi bạn.
Nhưng do bận công việc chưa test thử được nhiều.
Hiện tại mình thấy khi Load các file có trong thư mục (Explorer Folder) không được nhanh lắm, đôi lúc nó bị đơ.
Thanks
1/ không phải là chậm … code đó chạy rất nhanh đấy do mình cho nó duyệt tìm File trong Folder đệ quy khi Folder quá lớn mà bạn chưa chọn phần combox là Extension lấy phần mở rộng của Files cần tìm kiếm ( Mặc định mình cho là lấy hêt *.* )
để khắc phục cách trên khỏi đơ khi folder quá lớn là bạn chọn phần mở rộng của File trước … xong chọn Folder theo Exploer Folder sau khi đó trên Memo bạn sẻ thấy list Files cần tìm kiếm
Mình cố tình để vậy xem tình hình chung sao xong xử lý sau … nếu mình khóa Exploer Folder khi nó chạy xong thì các Control khác mới hoạt động là xong mà để vậy ai đó cứ bấm chuột liên tục trên Exploer Folder khi Folder lớn nó chưa chạy xong là đơ
2/ Khi bạn Click chuột vào từng files liên tục nó cũng thế vì nó chưa kịp xử lý xong bạn lại keo nó chạy tiếp liên tục sẻ bị vậy như mục số 1
Cách khắc phục như trên … nhưng mình vẫn để vậy để xem hết mọi lỗi xong có hướng xử lý bao quát nhất
3/ Khi bạn thấy nhiều mục nó chạy quá nhanh nhưng thực tế là nó chưa kết thúc bạn kích chuột liên tục làm cho nó đơ … mà hãy cho nó có khoãng chờ 1s thôi xong kích tiếp
Mọi vấn đề xử lý trong tầm tay …. nhưng mình vẫn đang viết tiếp + chờ sự phản hồi của người sử dụng … Xong khái quát lại sẻ làm 1 lượt là xong thôi
4 Cái SQL trong 1 đấy … Bao gồm:
1/ SQLite
2/ Access
3/ Excel
4/ Ms Server
5/ chưa làm được đó là SQL TCP/IP ( lấy dữ liệu qua Internet ) cái này trên VB6 đã làm xong … mà trình chưa tới nên chưa thể chuyển nó qua Delphi được … sẻ cố giắng biết đâu 1 ngày mát trời nào đó nó sẻ ra
Cảm ơn Bạn đã tin và sử dụng SQL do Kiều Mạnh Tự tay viết
www.giaiphapexcel.com/diendan/threads/tr%C3%ACnh-t%E1%BA%A1o-sql-v%C3%A0-truy-v%E1%BA%A5n-c%C6%A1-s%E1%BB%9F-d%E1%BB%AF-li%E1%BB%87u-sqlite-sqlite-builder.155113/
Khóa học Power PI – Ứng dung trong Nhân sự
TỔNG QUAN KHÓA HỌC: POWER BI CHO NGÀNH NHÂN SỰ Khóa học Power BI cho Nhân sự được thiết kế dành riêng cho các...
Xem khóa học