แสดงกระทู้

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - chai

หน้า: 1 [2] 3 4 5 6
19
setFocus ที่ Textbox อื่นก่อน แล้วมา setFocus ที่ TX08
เช่น
...
Me.TX10.SetFocus
Me.TX08.SetFocus

20
code ที่เห็น ใช้กับ mysql database ครับ จะ link ตารางใหม่
หลักการคือ สร้างตารางเก็บ config server connection ได้แก่ server ip,database name,user,password,driver
ที่เหลือแล้วแต่จะประยุกต์ใช้ทำอะไร ผมใช้กับ Form Login Event On_Form_load ให้ link ตารางให้ใหม่ ตาม config หรือ set config ใหม่เมื่อมีการเลี่ยนแปลง เช่น เปลี่ยน server ,database ง่ายดีครับ สามารถ connect ได้ทันที หรือ ให้ลบ link เมือ Login ไม่ผ่านก็ได้นะครับ เพิ่มความปลอดภัยของโปรแกรมได้ระดับนึง ต้องขอบคุณผู้รู้ที่ให้คำตอบผมในกระทู้ทุกท่านด้วยนะครับ

https://www.thai-access.com/index.php?topic=1961.msg8198#new

21
code คุณ TTT ใช้ได้เลยครับ

Private Sub Command1_Click()
Dim db As DAO.Database
    Dim tdf As DAO.TableDef
    Set db = CurrentDb
    Set tdf = db.CreateTableDef("department")
   
    tdf.Connect = "ODBC;DRIVER={MySQL ODBC 3.51 Driver};Server=192.168.0.243;Database=dental_stock;UID=sa;PWD=sa1234;Option=3"
    tdf.SourceTableName = "department"
    db.TableDefs.Delete "department"
    db.TableDefs.Append tdf

    Set tdf = db.CreateTableDef("vendor")
   
    tdf.Connect = "ODBC;DRIVER={MySQL ODBC 3.51 Driver};Server=192.168.0.243;Database=dental_stock;UID=sa;PWD=sa1234;Option=3"
    tdf.SourceTableName = "vendor"
    db.TableDefs.Delete "vendor"
    db.TableDefs.Append tdf

    db.Close: Set db = Nothing
End Sub

22
@SJS Windows 10 64 bit,Office 2010 32 bit,Mysql ครับ
มันสร้าง link ให้นะครับ แต่จะเปิดหน้าต่างให้เลือก DNS ทุกครั้งต่อทุกๆ link table สิ่งที่ต้องการคือ ให้สร้าง link table ทันที ตาม server ที่ set ใน vba ครับ

23
@SJS ลอง code แล้ว ปัญหาเหมือนเดิม คือ จะต้องเลือก DNS เสมอ จึงจะสร้าง link ให้ครับ



24
@SJS code นี้ต้องอาศัย DNS ใช่มั้ยครับ
เดี๋ยวลองดู ขอบคุณครับ

25
ลอง code แล้ว ไม่มีอะไรเกิดขึ้นเลย ไม่สร้าง link table ให้ ผิดพลาดตรงไหนครับ

Option Compare Database

Private Sub Command0_Click()
Dim strConnect As String

strConnect = "ODBC;DRIVER={MySQL ODBC 3.51 Driver};Server=192.168.0.243;Database=dental_stock;Uid=admin;Pwd=12345;Option=3"
Call relink_mysql_tables(strConnect)

End Sub
Public Sub relink_mysql_tables(mysql_connection As String)

Dim db As DAO.Database
Dim tblDef As DAO.TableDef
Dim sLocalTableName As String
Dim sRemoteTableName As String

' new collection '
Dim newTableDefs As New Collection

' current database '
Set db = CurrentDb()

' create new table defs '
For Each tblDef In db.TableDefs
    If (tblDef.Attributes And TableDefAttributeEnum.dbAttachedODBC) Then
        sLocalTableName = tblDef.Name
        sRemoteTableName = tblDef.SourceTableName

        ' create new linked table def '
        Set tblDef = db.CreateTableDef(sLocalTableName, dbAttachSavePWD, sRemoteTableName, mysql_connection)
        newTableDefs.Add tblDef

    End If
Next

' delete old table defs '
For Each tblDef In newTableDefs
    db.TableDefs.Delete tblDef.Name
Next

' add new table defs to current database '
For Each tblDef In newTableDefs
    db.TableDefs.Append tblDef
Next
End Sub

26
ลองสร้าง code link table จาก ODBC ดังนี้
Private Sub Command0_Click()
   
    DoCmd.DeleteObject acTable, "table_chai_leave_main"
   
    DoCmd.TransferDatabase acLink, "ODBC Database", "ODBC;DATABASE=ps_hospital_management;DNS=hos_management_mysql_sever243;OPTION=0;PORT=3306;SERVER=192.168.0.243;LANGUAGE=Thai;", acTable, "table_chai_leave_main", "table_chai_leave_main"
End Sub
แต่เมื่อกดปุ่มคำสั่ง ก็ปรากฏ หน้าจอถาม Data Source ODBC อีก ทั้งที่ใน code ก็ใส่ DNS แล้ว ไม่ทราบว่าต้องแก้ไขอย่างไรครับ อยากให้กดปุ่มแล้วให้สร้าง link table ให้เลย


27
ห้อง MS Access / : การเก็บข้อมูล user ,password
« เมื่อ: 22 ม.ค. 65 , 11:14:05 »
ขอบคุณครับ

28
ห้อง MS Access / : การเก็บข้อมูล user ,password
« เมื่อ: 21 ม.ค. 65 , 09:09:52 »
ขอตัวอย่างไว้ศึกษาหน่อยได้มั้ยครับ

29
ห้อง MS Access / การเก็บข้อมูล user ,password
« เมื่อ: 19 ม.ค. 65 , 10:57:25 »
ขอไอเดีย วิธีการเก็บข้อมูลที่เป็นความลับหน่อยครับ แต่ละท่านมีการเก็บอย่างไร เช่น มีการเข้ารหัสกันหรือไม่ครับ โดยเฉพาะการใช้ mysql database ซึ่งไม่มี inputmask(password) ให้ใช้ แต่ถึงจะใช้ inputmask ก็แก้กลับให้มองเห็นอยู่ดี

30
ขอบคุณครับ

31
ผมใช้ mysql เป็น database ปรากฎว่า เมื่อ user คีย์ข้อมูลเข้ามา รูปแบบวันที่เป็นจากเดิมทีเคยเป็น ค.ศ มาเป็นแบบ พ.ศ. เกิดจากสาเหตุอะไรบ้างครับ แก้ไขอย่างไร


32
คลิกขวา เลือก preperty เลือก open with


33
docmd.runsql "Delete from BB where รหัส not in (select รหัส from AA)"
หรือ สร้าง Delete คิวรี่ จากตาราง BB ตรงฟิวด์รหัส ใส่ criteria not in (select รหัส from AA)

34
สร้าง อีก TextBox นึง แล้วต่อ String ="00" & [Text30] จากนั้นซ่อน visible Text30 Running Sum เลือก Over All
ถ้าข้อมูลมีหลาย record จะแสดง 001,002,...,0010,...

หน้า: 1 [2] 3 4 5 6