Kiều Mạnh
I don't program, I beat code into submission!!!
- Tham gia
- 9/6/12
- Bài viết
- 5,538
- Được thích
- 4,132
- Giới tính
- Nam
I/ Sơ lược qua 1 chút
1/ xuất phát từ chủ đề sau mô tả chi tiết bài số 1 cùng loạt bài sau đó
www.giaiphapexcel.com
2/ Tôi viết thêm hàm Tạo TableName, xóa và ghi dữ liệu từ xa vào File *.accdb Or *.mdb ...
3/ lấy dữ liệu từ xa vvv ...
II/ để sử dụng App Server và truy xuất dữ liệu yêu cầu chi tiết như sau
1/ File ServerNetwork.exe + File MyLibrary32.dll luôn luôn đi kèm với nhau trong 1 Folder
2/ đi kèm là 2 DLL viết = Delphi 32 bit và 64 bit ... tùy thuộc vào bạn cài đặt Office x32 và x64 thì sử dụng nó
3/ xuất các hàm cơ bản nhất song song nhau là COM và API ... nếu sử dụng COM thì đăng ký sử dụng với Windows ( kèm theo *.vbs )
4/ Hình ảnh các hàm trong COM như sau ... khai báo theo chuẩn chung COM của Ms và sử dụng

5/ File Excel tôi úp lên đây là khai báo sử dụng API còn muốn sử dụng COM thì chức năng như nhau
III/ Cảnh báo Lỗi
1/ sẻ lỗi nếu chạy File ServerNetwork.exe trên Máy ảo hoặc hệ thống ảo hóa
2/ nếu máy cài Office x64 mà sử dụng File mục 1 chia sẻ dữ liệu sẻ lỗi ko lấy được dữ liệu File ( *.xlsm, xlsb, xlsx ) Excel từ 2010 to 2021 ( chỉ sử dụng tốt file *.xls )
3/ khắc phục lỗi trên cho Officex64 thì cài đặt Microsoft Access Database Engine 2010 Redistributable ... link trên trong mục số 3
IV / vài VD cơ bản sử dụng code
1/ Từ Server sau khi chia sẻ Folder xong bạn tạo 1 File tạm keo QLBHPN.accdb vào Folder chia sẻ
2/ Từ client tạo 1 Table + Fild như sau
3/ ghi 1 dòng dữ liệu vào mục số 2
4/ ghi n dòng dữ liệu vào mục số 2
5/ xóa dữ liệu
Kiến thức cơ bản sử dụng ADODB thuần
còn nhiều vấn đề khác thong thả viết tiếp ... chi tiết trong File Excel kèm theo
Vui lòng ko trích dẫn bài này vì còn chỉnh sửa + viết thêm chưa hoàn chỉnh
Chủ đề này chỉ hổ trợ ai đó sử dụng nó or tò mò muốn thử ....
Nếu phát sinh lỗi thì mô tả lỗi trong phạm vi điều chỉnh Tôi sẻ viết lại
Bạn nào có ý Bà Tám + Cô 9 vui lòng lập thới mới mà bàn ... xin cảm ơn
Demo có thể tải trên GitHub
github.com
1/ xuất phát từ chủ đề sau mô tả chi tiết bài số 1 cùng loạt bài sau đó

Lấy Dữ liệu Qua Internet - Phương Thức SQL TCP/IP
1/ đây là bản Demo lấy dữ liệu qua Internet ... Úp lên đây cho bạn nào dùng được thì dùng 2/ đọc file hướng dẫn kèm theo khi tải Files 3/ Nếu máy bạn nào cài Office 64 bít thì bắt buộc cài Microsoft Access Database Engine 2010 Redistributable của Ms link sau thì mới sử dụng được...

2/ Tôi viết thêm hàm Tạo TableName, xóa và ghi dữ liệu từ xa vào File *.accdb Or *.mdb ...
3/ lấy dữ liệu từ xa vvv ...
II/ để sử dụng App Server và truy xuất dữ liệu yêu cầu chi tiết như sau
1/ File ServerNetwork.exe + File MyLibrary32.dll luôn luôn đi kèm với nhau trong 1 Folder
2/ đi kèm là 2 DLL viết = Delphi 32 bit và 64 bit ... tùy thuộc vào bạn cài đặt Office x32 và x64 thì sử dụng nó
3/ xuất các hàm cơ bản nhất song song nhau là COM và API ... nếu sử dụng COM thì đăng ký sử dụng với Windows ( kèm theo *.vbs )
4/ Hình ảnh các hàm trong COM như sau ... khai báo theo chuẩn chung COM của Ms và sử dụng

5/ File Excel tôi úp lên đây là khai báo sử dụng API còn muốn sử dụng COM thì chức năng như nhau
III/ Cảnh báo Lỗi
1/ sẻ lỗi nếu chạy File ServerNetwork.exe trên Máy ảo hoặc hệ thống ảo hóa
2/ nếu máy cài Office x64 mà sử dụng File mục 1 chia sẻ dữ liệu sẻ lỗi ko lấy được dữ liệu File ( *.xlsm, xlsb, xlsx ) Excel từ 2010 to 2021 ( chỉ sử dụng tốt file *.xls )
3/ khắc phục lỗi trên cho Officex64 thì cài đặt Microsoft Access Database Engine 2010 Redistributable ... link trên trong mục số 3
IV / vài VD cơ bản sử dụng code
1/ Từ Server sau khi chia sẻ Folder xong bạn tạo 1 File tạm keo QLBHPN.accdb vào Folder chia sẻ
2/ Từ client tạo 1 Table + Fild như sau
Mã:
Public Sub CREATE_TableName()
TableName = "CREATE TABLE my_ado(id int not null primary key, name varchar(200)," _
& "txt text, dt date, tm time, ts timestamp)"
Rem Se loi neu Table da ton tai
On Error GoTo ErrorHandler
Ip = GetIpTCP ''Luu Y thay doi IP nay cho may tinh khac can lay qua Internet
Set Rst = ConnectionDBA(Ip, Port, "QLBHPN.accdb", TableName)
Rst.Close: Set Rst = Nothing
Exit Sub
ErrorHandler: If Err Then Err.Clear
End Sub
3/ ghi 1 dòng dữ liệu vào mục số 2
Mã:
Public Sub INSERT_INTO_TableName1()
Ip = GetIpTCP ''Luu Y thay doi IP nay cho may tinh khac can lay qua Internet
TableName = "my_ado"
FileName = "QLBHPN.accdb"
Rem ==========
LastID = GetLastIdTableNameA(Ip, Port, FileName, TableName)
Debug.Print LastID
If LastID = vbNullString Then LastID = 0
LastID = LastID + 1
Rem ==========
SQL = "INSERT INTO my_ado(id,name,txt) values(" & LastID & " ,22200,'MyQL')"
Set Rst = ConnectionDBA(Ip, Port, "QLBHPN.accdb", SQL)
Debug.Print SQL
Rem ==========
Rst.Close: Set Rst = Nothing
Call CopyDataToRange
End Sub
4/ ghi n dòng dữ liệu vào mục số 2
Mã:
Public Sub INSERT_INTO_TableName2()
Ip = GetIpTCP ''Luu Y thay doi IP nay cho may tinh khac can lay qua Internet
TableName = "my_ado"
FileName = "QLBHPN.accdb"
start = Timer
Rem ==========
LastID = GetLastIdTableNameA(Ip, Port, FileName, TableName)
Rem Debug.Print LastID
If LastID = vbNullString Then LastID = 0
Rem ==========
For i = 1 To 100
LastID = LastID + 1
SQL = "INSERT INTO my_ado(id,name,txt) values(" & LastID & " ,22200,'MyQL')"
Set Rst = ConnectionDBA(Ip, Port, "QLBHPN.accdb", SQL)
''Debug.Print SQL
Next i
Rem ==========
Debug.Print "So dong INSERT " & vbTab & (i - 1), (Timer - start)
Rst.Close: Set Rst = Nothing
Call CopyDataToRange
Debug.Print "Tong so dong : " & vbTab & LastID
End Sub
5/ xóa dữ liệu
Mã:
Public Sub DeLete_TableName()
SQL = "DELETE FROM my_ado"
Ip = GetIpTCP ''Luu Y thay doi IP nay cho may tinh khac can lay qua Internet
Set Rst = ConnectionDBA(Ip, Port, "QLBHPN.accdb", SQL)
Rst.Close: Set Rst = Nothing
Call CopyDataToRange
End Sub
Kiến thức cơ bản sử dụng ADODB thuần
còn nhiều vấn đề khác thong thả viết tiếp ... chi tiết trong File Excel kèm theo
Vui lòng ko trích dẫn bài này vì còn chỉnh sửa + viết thêm chưa hoàn chỉnh
Chủ đề này chỉ hổ trợ ai đó sử dụng nó or tò mò muốn thử ....
Nếu phát sinh lỗi thì mô tả lỗi trong phạm vi điều chỉnh Tôi sẻ viết lại
Bạn nào có ý Bà Tám + Cô 9 vui lòng lập thới mới mà bàn ... xin cảm ơn
Demo có thể tải trên GitHub
GitHub - KieuManh366377/SQL-TCP-IP: SQL TCP/IP
SQL TCP/IP. Contribute to KieuManh366377/SQL-TCP-IP development by creating an account on GitHub.
Lần chỉnh sửa cuối: