Cách nào để Share Full file Data.mdb "nhập Pass đúng mới cho Link"?

  • Thread starter chihienphuco
  • Ngày gửi
C

chihienphuco

Trung cấp
20/4/09
109
1
0
Bình Chánh
File Data.mdb chứa Table, File App.mdb chứa Query Form Report... khoảng 5 máy link table đến file Data.mdb

Mình muốn khi link Table đến các file App.mdb mình chỉ định thì không cần pass. Còn ngoài file App.mdb chỉ định thì phải có pass mới cho link.

Vậy mình phải làm sao, rất mong anh em hướng dẫn giúp!
 
Khóa học Quản trị dòng tiền
N

nguoiconxunui

Khách vãng lai
29/6/04
1,280
215
63
Bình Định
aso2pc.co.cc
Sao không nghĩ ngược lại chút cho dễ:
cái data.mdb đặt pass
Trong app.mde thì link bằng một thủ tục có pass
---------
Đơn giản hơn không?
 
C

chihienphuco

Trung cấp
20/4/09
109
1
0
Bình Chánh
Sao không nghĩ ngược lại chút cho dễ:
cái data.mdb đặt pass
Trong app.mde thì link bằng một thủ tục có pass
---------
Đơn giản hơn không?

Bạn hướng dẫn dùm khi đặt pass file data.mdb? để khi mở file App.mde nó tự link table tự nhận pass luôn? cám ơn nhiều!
 
N

nguoiconxunui

Khách vãng lai
29/6/04
1,280
215
63
Bình Định
aso2pc.co.cc
keyword with google " Link table đến daba có password"
À Thằng MS nó chỉ đó là dùng ADO ah,
Mình thấy mấy người trên mạng dùng cách này nà: củ chuối chết được
1. tạo function để thay đổi pass cho file data
2. Mỗi lần muốn thao tác thì set cái files data no pass
3. Kết thúc thao tác thì set lại pass bình thường
--------
Không thì bạn mở cais table này : MSysObjects để coi cấu trúc khi link table có password sau đó bạn biết thao tác như thế nào liền hà. ncxn toàn xem cái này xong ngồi chế vài thủ tục ngon lành hì hì. Nên nó cũng charwg giống ai ! lol
 
C

chihienphuco

Trung cấp
20/4/09
109
1
0
Bình Chánh
Dim adoCn As ADODB.Connection
Dim adoCat As New ADOX.Catalog
Dim adoTbl As New ADOX.Table

Private Sub Command1_Click()

'Create Link...
Set adoCat = New ADOX.Catalog
Set adoCat.ActiveConnection = adoCn

Set adoTbl.ParentCatalog = adoCat
adoTbl.Name = "LinkTable"

adoTbl.Properties("Jet OLEDB:Link Datasource") = App.Path & "\myLinkDatabase.mdb"
adoTbl.Properties("Jet OLEDB:Link Provider String") = "MS Access;Pwd=myLinkPassword"
adoTbl.Properties("Jet OLEDB:Remote Table Name") = "LinkDatabaseTable"
adoTbl.Properties("Jet OLEDB:Create Link") = True

'Append the table to the tables collection
adoCat.Tables.Append adoTbl

Form1.Caption = "Link Created..."

End Sub

Private Sub Command2_Click()

'Refresh Link...
Set adoCat = New ADOX.Catalog
Set adoCat.ActiveConnection = adoCn

Set adoTbl.ParentCatalog = adoCat

For Each adoTbl In adoCat.Tables
If adoTbl.Type = "LINK" And (adoTbl.Name = "LinkTable") Then
adoTbl.Properties("Jet OLEDB:Link Provider String") = "MS Access;Pwd=myLinkPassword"
adoTbl.Properties("Jet OLEDB:Link Datasource") = App.Path & "\myLinkDatabase.mdb"
End If
Next

Form1.Caption = "Link Refreshed..."

End Sub

Private Sub Form_Load()

strCn = App.Path & "\myDatabase.mdb"
Set adoCn = New ADODB.Connection
With adoCn
.Provider = "Microsoft.JET.OLEDB.4.0;" & _
"Jet OLEDB:Database Password=myPassword"
.Open strCn
End With

End Sub

myPassword có phải là pass đã đặt của file .mdb ? form là form chính khi khởi động phải không ncxn ? mình xài nhiều app.mde câu lệnh có vấn đề ko ?

Cám ơn nhe!
 
M

mvp2006

Sơ cấp
16/10/08
36
0
0
TPHCM
Để link từ table từ file mdb mình làm như sau
Trong file mde tạo 2 table
1. config : Chứa địa chỉ + tên file mdb : vd: d:\ketoan\data.mdb
2. ConnecTableList : Chứa tên các table cần linh từ file mdb
Gọi hàm sau:

Sub ConnectSource()
Dim tdf As TableDef
Dim Rst As Recordset
Dim Rst1 As Recordset
Dim Mydata As String
Dim mytb As String

Set Rst = CurrentDb.OpenRecordset("config") 'Table luu dia chi + ten file mdb
Rst.MoveFirst
Mydata = Rst.Fields("databasefile") ' field chua dia chi + ten file mde
Rst.Close
Set Rst1 = CurrentDb.OpenRecordset("ConnecTableList") ' Table chua ten cac table can link tu file mdb
Rst1.MoveFirst
Do Until Rst1.EOF
mytb = Rst1.Fields("TableName") ' Field chứa tên table
Set tdf = CurrentDb.CreateTableDef(mytb)
tdf.Connect = "Ms Access;UID=Admin;PWD=" & DbPassWord & ";DATABASE=" & Mydata
tdf.SourceTableName = mytb
CurrentDb.TableDefs.Append tdf
Rst1.MoveNext
Loop
Rst1.Close
End Sub

Trong đó DbPassWord là PW của file mdb.
 

Xem nhiều