เนื่องจาก Source Code บางตัว สุ่มเสี่ยงต่อการนำไปใช้ในทางที่ผิด
หากดาวน์โหลดไม่ได้ ติดต่อเข้ามาทาง Inbox ที่เฟซบุ๊คผมแทนน่ะครับ
เฟซบุ๊คเว็บมาสเตอร์

หน้าหลัก
ข่าวสาร - บทความ ทั้งหมด
VB 6/VB.Net
ASP/ASP.Net
จับฉ่ายคอมพิวเตอร์
เรียนรู้ผ่าน Flash Movie
บทความที่มีผู้ตอบล่าสุด  
 RSS Feeds
 ดาวน์โหลดโปรแกรม RSS Reader ได้ที่นี่ ...   Download โปรแกรม RSS Reader

กระดานข่าวสาร เว็บบอร์ด - www.g2gnet.com
ดาวน์โหลดฟรีโปรแกรม และ Free Souce Code ได้ที่นี่ ...
รู้จักกับเว็บมาสเตอร์ - www.g2gnet.com
::: โปรแกรมมาใหม่ :::
โปรแกรมพิมพ์สติ๊กเกอร์บาร์โค้ด - Barcode Sticker
โปรแกรมพิมพ์สติ๊กเกอร์บาร์โค้ด - Barcode Sticker
โปรแกรมไปรษณีย์ และ จุดชำระค่าบริการ (iPayPost Software)
โปรแกรมไปรษณีย์ และ จุดชำระค่าบริการ
โปรแกรมจุดรับชำระค่าบริการ (iPayLite Software)
โปรแกรมจุดรับชำระค่าบริการ
::: BarcodeSoft :::
::: Printing :::
โปรแกรมพิมพ์รหัสบาร์โค้ด - BarcodeSoft Printing
โปรแกรมรหัสไปรษณีย์ทั่วไทย
::: G2GNet PostCode :::
!!!!! แจกฟรี !!!!!
ดาวน์โหลดโปรแกรมรหัสไปรษณีย์ทั่วไทย G2GNet PostCode Thailand
Visitors - Session views
 3 6 4 3 6 3 3

7 ธันวาคม พ.ศ.2549
28 Users On-Line.
Visitors - Page views
 6 3 7 2 7 3 1
1 กุมภาพันธ์ พ.ศ.2551

Google   
เว็บ g2gnet.com
ขนาดตัวอักษร:  
    ดาวน์โหลด และ แนะนำวิธีการติดตั้ง Active Report Professional 2.0
    แจกฟรี Source Code โปรแกรมขายสินค้า - Point Of Sale (โดย เว็บมาสเตอร์-ทองก้อน
    แจกฟรี Source Code การพิมพ์ใบกำกับภาษี - Active Report 2.0 (โดย ctx-9000@hotmail.com)
    SourceCode การดึงข้อมูลมาแสดงผลลงใน SharpGrid (โดย dos_network@hotmail.com)
    แจกฟรี Source Code VB6+Access โปรแกรมฐานข้อมูลครุภัณฑ์
    แจกโปรแกรมดูทีวี ดูหนัง ฟังวิทยุ ฟังเพลงออนไลน์ - G2GnetTV On Line ... ฟรีๆๆๆๆ
          ข้อมูลสถานี/รายการ (XML)  ข้อมูลสถานี/รายการ (HTML)
โปรแกรมระบบบัญชี Profit - Account

การเชื่อมต่อระบบฐานข้อมูล MS SQL Server (ภาคปฏิบัติ)

Category »  VB 6/VB.Net
โดย : Webmaster เมื่อ 31/5/2551 12:12:00
(อ่าน : 64215)/(ตอบ : 28)  ข้อคิดเห็น   |   พิมพ์   |  
โดยทั่วๆไปเมื่อเราทดสอบการเชื่อมต่อฐานข้อมูล MS SQL Server อยู่ที่เครื่องที่เราใช้งานเอง (Local Machine) ก็มักจะไม่ค่อยพบปัญหาเท่าใดนัก แต่พอข้ามเครื่อง (Network) ทีไรก็จะเจอปัญหาทุกทีซิน่า ซึ่งส่วนใหญ่ก็น่าจะเป็นเรื่องของ Security ซ่ะมากกว่า ... แต่บางเรื่องน่ะครับพี่น้อง เราก็ไม่สามารถกางตำรา บ้าทฤษฎี แล้วนำมาอธิบายได้หรอก ... 55555+ ... เพราะเรื่องราวแบบนี้มันหามาได้ด้วยคำว่า "ประสบการณ์" คือ ทำบ่อยๆไปเดี๋ยวก็รู้เองแหละ ...
ผมเชื่อว่ามีอีกหลายๆคนที่ไม่เคยรู้มาก่อนว่า การใช้งานโปรแกรม MS Visual basic 6 ไม่จำเป็นต้องมีฟอร์มเลยก็ได้น่ะครับ โดยที่เราสามารถสั่งให้ Startup object ได้เลย ที่ Sub Main ซึ่งเจ้า Sub Main ที่ว่ามานี้ โดยปกติเราจะนำไปวางไว้ที่ Module (นามสกุล .BAS)

Add New Module


Startup object


' การออกแบบโปรแกรมให้มีโครงสร้าง จะช่วยลดปัญหาลงไปได้เยอะ 
' พร้อมๆกับทำให้โปรแกรมเมอร์อย่างผมมีเวลาไปเล่นเกมส์ได้อีก เหอๆๆๆๆ ...
' การทดสอบกับเครื่อง Local Machine ' โค้ดเหล่านี้ถูกจัดเก็บใน Module ด้วยน่ะครับ ... พี่น้อง Option Explicit Global ConnDB As New ADODB.Connection ' พยายามลดการใช้งานตัวแปรซ้ำซ้อนครับ ... เพื่อแก้ปัญหาภาวะเครื่องร้อน ... เอิ๊กๆๆๆๆๆ 'Global RS As New ADODB.Recordset 'Global DS As New ADODB.Recordset 'Global RstData As New ADODB.Recordset ' ใช้ในรายงาน 'Global Statement As String 'Global SQLStmt As String ' Sub Main() ' ทดสอบการเชื่อมต่อฐานข้อมูล Call OpenDataBase ' เปิดแล้วก็ปิด ... เพราะต้องการแค่ทดสอบ Call CloseDataBase End Sub Public Sub OpenDataBase() On Error GoTo Err_Handler ' Open a connection. Set ConnDB = New ADODB.Connection ' จัดรูปแบบให้สวยงาม อ่านง่ายๆ ' ใช้ฐานข้อมูลตัวอย่าง NorthWind เป็นตัวทดสอบ ConnDB.ConnectionString = _ " Provider=SQLOLEDB.1;" & _ " Integrated Security=SSPI;" & _ " Server=(local);" & _ " Initial Catalog=NorthWind;" & _ " User ID=;" & _ " Password=;" ConnDB.Open MsgBox "การเชื่อมต่อกับฐานข้อมูลเรียบร้อย.", vbOKOnly + vbInformation, "รายงานสถานะ" ExitProc: Exit Sub Err_Handler: MsgBox "Open Database Error : " & vbCrLf & Err.Number & " " & Err.Description Resume End Sub Public Sub CloseDataBase() ' ตรวจสอบว่ามีการเชื่อมโยง - Connect ข้อมูลหรือไม่ If ConnDB.State = adStateOpen Then ConnDB.Close Set ConnDB = Nothing End If End Sub

สามารถเชื่อมต่อได้เรียบร้อย ... ตราเด็กสมบูรณ์

' การทดสอบกับระบบเครือข่ายโดยใช้ MS Windows XP เป็น Server
' ก็แค่เปลี่ยนชื่อ Server ที่เราต้องการจะติดต่อกับมัน ... เท่านั้นเอง
Public Sub OpenDataBase() On Error GoTo Err_Handler Set ConnDB = New ADODB.Connection ConnDB.ConnectionString = _ " Provider=SQLOLEDB.1;" & _ " Integrated Security=SSPI;" & _ " Server=Server-XP;" & _ " Initial Catalog=NorthWind;" & _ " User ID=;" & _ " Password=;" ConnDB.Open MsgBox "การเชื่อมต่อกับฐานข้อมูลเรียบร้อย.", vbOKOnly + vbInformation, "รายงานสถานะ" ExitProc: Exit Sub Err_Handler: MsgBox "Open Database Error : " & vbCrLf & Err.Number & " " & Err.Description Resume End Sub

เกิด Error ว่า Login failed for user SERVER\Guest
Server คือ ชื่อ Server ที่คุณทำการติดต่อกับมันน่ะครับ
การแก้ปัญหาก็สุดแสนจะง่ายดายมากๆ ...

เปิด SQL Server Enterprise Manager
(จากเครื่องที่เป็น Server น่ะครับ ... ไม่ใช่ Local Machine)

เปลี่ยนจาก Windows only ไปเป็นแบบ Mixed Mode หรือ SQL Server and Windows แทนครับ
จากนั้นให้ Restart Server ใหม่อีกรอบ
และไม่ว่าคุณจะแก้กลับไปเป็นโหมด Windows only ใหม่ก็ตามที Error นี้ก็จะไม่เกิดขึ้นอีกเลย
ผมหาทฤษฎีมาอธิบายไม่ได้ครับ ... พี่น้อง

หรือ เราสามารถบังคับให้ปรากฏ Option หรือ ทางเลือก เพื่อที่จะเลือกเอา Server กับฐานข้อมูลที่ต้องการมาใช้งานได้ดังนี้ ...

' การใช้คุณสมบัติ adPromptAlways เพื่อสร้างทางเลือกของการเชื่อมต่อฐานข้อมูล
Public Sub OpenDataBase()
On Error GoTo Err_Handler
    Set ConnDB = New ADODB.Connection
    ConnDB.ConnectionString = _
        " Provider=SQLOLEDB.1;" & _
        " Integrated Security=SSPI;" & _
        " Server=Server-XP;" & _
        " Initial Catalog=NorthWind;" & _
        " User ID=;" & _
        " Password=;"

    ConnDB.Properties("Prompt") = adPromptAlways
    ConnDB.Open
    ' MsgBox "การเชื่อมต่อกับฐานข้อมูลเรียบร้อย.", vbOKOnly + vbInformation, "รายงานสถานะ"

ExitProc:
    Exit Sub

Err_Handler:
    Select Case Err.Number
        ' ดัก Trap Error ของการกดปุ่ม Cancel
        Case -2147217842
            ' จากนั้นสั่งให้ Resume หรือ ทำงานต่อไปได้เลย
            Resume
        
        Case Else
            MsgBox "Open Database Error : " & vbCrLf & Err.Number & " " & Err.Description
            Resume
    End Select
End Sub

การใช้คุณสมบัติ adPromptAlways เพื่อเลือกการเชื่อมต่อ
Conclusion:
ตอนนี้ก็ขอทดสอบกับ Windows XP ไปพลางๆก่อนน่ะครับผม รอบหน้าค่อยมาว่ากันอีกทีสำหรับการเข้าถึงข้อมูลบน Server 2003 Data Center และ MS SQL Server 2005 เพราะช่วงนี้ยังไม่มีงานระดับนี้เข้ามา ก็เลยยังไม่ได้ทำการติดตั้ง OS ในเครื่อง Server ที่ผมใช้ทดสอบเลยครับพี่น้อง ... 55555+

ร่วมแสดงความคิดเห็น

[ความเห็นที่:  1] จากคุณ : inarok เมื่อ 2/6/2551 13:33:11  IP: 203.156.81.122

เข้ามาเก็บเกียวครับ ตอนนี้ลองกับ 2005 Express หาคอนเน็คชั่นสตริงด้วยการดึง adodc มา กด next ๆ ๆ ส่วนวิธีการบันทึกวันที่ก้อ

Dim CONDATE As String

CONDATE = Format(DTPicker1.Value, "yyyy-mm-ddT00:00:00")

SQLRN = "insert into testdate(tdate) values ('" & SQdate2(DTPicker1.Value) & "')"

ใครทราบแล้วก็ขออภัย ส่วนผม งมตั้งนาน ว่าแต่ท่านเว็บมาสเตอร์จบเทคโนไทยนี่เอง...

[ความเห็นที่:  2] จากคุณ : kondee เมื่อ 23/6/2551 9:42:51  IP: 125.25.16.148

คือกำลังออกแบบ ระบบApartment อยู่ค่ะแต่ไม่รู้เรื่องเลยอยากตายมาก เพราะใกล้ไฟนอลแล้วยังไม่ได้สักฟอร์มเรย

ขอโค้ด เปลี่ยนสีปุ่มแสดงสถานะห้องว่างได้มั้ยค่ะ 

และการแสดงภาพบนฟอร์ม vb6 อ่ะค่ะ ฐานข้อมูล SQL2000 ใช้ DataGrid

[ความเห็นที่:  3] จากคุณ : เก๋ง เมื่อ 2/7/2551 14:21:48  IP: 58.10.102.49

ผมอยากจะให้sql 2000 connect ด้วย local ได้อย่างเดียว ไม่อยากให้connect ได้ระยะไกล อยากได้เวลา netstat -na แล้ว แสดง 127.0.0.1:14333 ทุกวันนี้มันแสดง 0.0.0.0:1433

email:jenniferlovehewit007@yahoo.com

[ความเห็นที่:  4] จากคุณ : superning เมื่อ 6/10/2551 16:23:29  IP: 125.25.131.132

mysql กับ sql server อันไหนดีกว่ากันคะ
ตอนนี้ลอง mysql อยู่ รันโปรแกรมที่เคยใช้ access เป็นฐานข้อมูลอยู่ 
มันช้าลงมากเลยอ่ะคะ ทั้งที่โค้ดก็แทบเหมือนเดิม เปลี่ยนแค่ format วันที่

เลยไม่รู้จะทำต่อ หรือกลับไปใช้ access น่ะคะ

[ความเห็นที่:  5] จากคุณ : VB คนใหม่ เมื่อ 4/11/2551 11:36:36  IP: 124.120.78.32

  คห 4: ส่วนตัวน่ะครับ mysql เอาไว้ใช้พอสมควรประเภทไว้ทดลอง ส่วน sql server ประเภทข้อมูลมหาศาลกะอยู่ยาวนาน ส่วน access ระวังน่ะครับอันนี้ผมเจอมาเองครับ ถ้า table มี 50 field มีประมาณ 50,000 recoed > เมื่อ select ตามเงื่อนไขที่ต้องการ บางทีมีข้อมูลที่ไม่อยู่ในเงื่อนไขออกมาด้วย ก็โปรแกรมเดิม ๆ แหละครับ ถ้าใครเคยเจอแล้วแก้ได้ก็ช่วยด้วยครับ เพราะผมหาทางมานานมากครับ ยังไม่รู้จะทำยังไง

[ความเห็นที่:  6] จากคุณ : Gamera3D เมื่อ 19/11/2551 15:13:41  IP: 58.8.45.202

ขอแทงแรงๆซักหนึ่งที
เอ้า แทงยู

[ความเห็นที่:  7] จากคุณ : Mr.Den เมื่อ 23/12/2551 10:27:40  IP: 58.9.93.90

ขอเรียนถาม.. ท่านอาจารย์ทองก้อน
เรื่อง.. เชื่อมต่อฐานข้อมูล sqlserver ระยะไกล
  เช่น ระหว่างจังหวัด เพื่อนำข้อมูลมาเก็บไว้หรือเรียกมาดูเป็นครั้งคราวหรือตลอดเวลา
  ต้องใช้วิธีใหนดี (ใช้โปรแกรมอะไรช่วย ,ระบบอินเตอร์เน็ต ,ระบบโมเด็ม-โทรศัพท์)

ขอบคุณครับ..
หรือว่าใน g2gnet.com มีอยู่แล้วแต่ผมหาไม่เจอ..??

[ความเห็นที่:  8] จากคุณ : ทองก้อน เมื่อ 23/12/2551 11:01:01

ศึกษาข้อมูลได้จากเรื่องของ VPN (Virtual Private Network) ได้เลยครับผม แต่ผมก็ไม่เคยลองทำหรอกครับ เพราะไม่มีคนมาจ้างให้ทำ ก็เลยไม่ได้ทำ 55555+

ลองดูตัวอย่างจากที่นี่ครับผม
http://www.itwizard.info/technology/windows/vpn_apply.html

หรือ ตัวอย่างการตั้งค่า
http://www.adslthailand.com/forum/viewtopic.php?t=44029
http://adslquick.com/webboard/index.php?topic=31.0
http://tutorials.idesign.in.th/-windows/67--vpn--windows-2003-server.html

โอ้ย ... มีเยอะมากๆครับผม

[ความเห็นที่:  9] จากคุณ : Mr.Den เมื่อ 27/12/2551 16:47:57  IP: 58.9.100.74

ขอบคุณ หลายๆๆ...เด้อ!!คับ

อยากจะขอบคุณเป็นภาษาเขมร แต่กลัวอาจาร์ยฮับบ่ได้..

[ความเห็นที่:  10] จากคุณ : Mr.ton เมื่อ 6/1/2552 12:13:28  IP: 124.120.223.217

รบกวนสอบถามครับ ในกรณีที่เรา Connect time out แล้วเราต้องการให้มันทำงานต่อ แต่ต้องติดต่อ Base ใหม่อีกครับอัตโนมัติ ไม่ทราบต้องทำอย่างไงครับ รบกวนด้วยครับ

[ความเห็นที่:  11] จากคุณ : ทองก้อน เมื่อ 6/1/2552 12:59:29

คิดได้ในตอนนี้ก็คือ ... แอ่นแอ้นนนน ... ใช้ Timer เข้าช่วยครับกระผม ลองดูจากตัวอย่างการ Backup ข้อมูลอัตโนมัติก็แล้วกันครับ

http://www.g2gnet.com/News/activenews_view.asp?articleID=89

เผื่อเหลือเผื่อขาด ก็อย่าลืมตรวจสอบการ Connection ก่อนด้วยล่ะ เช่น
If ConnDB.State = adStateOpen Then
        ConnDB.Close
        Set ConnDB = Nothing
End If

[ความเห็นที่:  12] จากคุณ : Mr.ton เมื่อ 6/1/2552 13:12:16  IP: 124.120.223.217

ขอบคุณมากครับ เดียวอย่างไงผมรองดูก่อนนะครับ

[ความเห็นที่:  13] จากคุณ : รักดี เมื่อ 22/4/2552 9:50:51  IP: 202.69.141.26

ตอนนี้หาวิธีการเชื่อมฐานข้อมูลในVB2008อยู่ครับ
รบกวนช่วยบอกผมหน่อยครับ

[ความเห็นที่:  14] จากคุณ : ทองก้อน เมื่อ 23/4/2552 11:01:47

อันที่จริงเว็บของผมมันหนักออกมาทาง VB6.0 น่ะครับ แต่เมื่อคุณขอมาเราก็ยินดีจัดให้ครับ ...

ผมทดสอบกับ SQLExpress ครับผม เพราะคิดว่าน่าจะตั้งคำถามผ่านทาง SQL Server มากกว่า ... หากเป็น Access ก็ใช้เหมือนกับ VB6 โดยผ่านทาง OLEDB ได้เลย

Dim Conn As New SqlClient.SqlConnection( _
        " Data Source =(local)\SQLExpress;" & _
        " User Instance=True;" & _
        " Integrated Security=true;" & _
        " AttachDbFilename = " & _
        " C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\northwind.mdf;")
        Conn.Open()
        MsgBox("Connection Success ...")
        Conn.Close()
=========================================

[ความเห็นที่:  15] จากคุณ : zagi เมื่อ 19/6/2552 14:28:28  IP: 202.176.81.144

ขอถามหน่อยครับ
Mssql 5.0 connect ยังไงครับ ใช้ ODBC 5.1  ทำ DSN less
ทำยังไงครับ

[ความเห็นที่:  16] จากคุณ : anakinzx เมื่อ 24/8/2552 18:36:29  IP: 118.172.33.98

ขอบคุณมากมากนะครับ  ยังไงผมขอรบกวนหน่อยนะครับ
อาจารย์ครับ 
ช่วยส่งไฟล์ ตัวอย่าง การเชื่อมต่อ ระหว่าง server กับ client หน่อยนะครับ 
และการดึงข้อมูลระหว่าง server กับ client หน่อยนะครับ 
server เขียนแบบไหน client เขียนแบบไหน  ตอนนี้ผมลง sql server 2000 ตามด้านบน
คือผมนักศึกษาเรียนอยู่ไม่เคยเขียนเชื่อมต่อ server client เลยครับ ผมมีคอมที่จะใช้งาน 2 เครื่อง นีึ้เมลย์ผมนะครับ aaron_forest@hotmail.com 
ผมต้องการเรียนรู้อีกเยอะเลย ประสบการณ์มีไม่ค่อยมากครับ  ^ ^

[ความเห็นที่:  17] จากคุณ : anakinzx เมื่อ 4/9/2552 15:09:11  IP: 118.172.27.191

ขอบคุณนะครับ แต่ไม่ต้องละครับ ผมใช้ provider=sqloledb แ้ล้วดัน เครื่อง client กลับเชื่อมไม่ได้
ผมเลยใช้ driver ผ่าน odbc แทน แล้วมันก็ได้ละครับ   ^ ^

[ความเห็นที่:  18] จากคุณ : withlove เมื่อ 5/9/2552 11:20:16  IP: 118.172.146.52

อยากถามวิธีการแชร์ vb 6จากเครื่องแม่  แล้วใช้งานที่เครื่องลูก  ลองแชร์แบบ full มันก็ยังติด Error คะ  รู้ว่าต้องมีโค้ดเพิ่ม  แต่ขุดหาไม่เจอคะ  ช่วยตอบด้วยนะคะ (vb 6 ฐาน acc)

[ความเห็นที่:  19] จากคุณ : Connect เมื่อ 15/9/2552 21:48:31  IP: 125.24.3.117

คุณทองก้อนครับ ผมขอคำแนะนำเกี่ยวกับการเลือกต้องเปลียน Server บ่อยครั้ง
แล้วทุกครั้งที่ผมต้องเปลี่ยนServer ผมต้องแก้  Connect  ใหม่แล้วก็แพคโปรแกรมใหม่อีกรอบ
คือผมไม่อยากแพคโปรแกรมทุกครั้งที่แก้  Connect  ผมเห็นเค้าทำกันที่ xml 
คุณทองช่วยแนะนำตรงนี้หน่อยครับ 

[ความเห็นที่:  20] จากคุณ : it เมื่อ 1/12/2552 1:02:09  IP: 118.172.230.30

คือผมทำโปรเเกรมจัดตรารางสอนอัตโนมัติ เเบบว่าคลิกเเล้วจัดเสร็จเลย จะทำได้ไหมครับ
คื่อสุม่เเต่วันเเละเวลาครับ 
ช่สยเเนะนำด้วยครับ โปรเจคจบครับ

[ความเห็นที่:  21] จากคุณ : google เมื่อ 19/12/2553 12:40:10  IP: 110.168.92.73

google.com

[ความเห็นที่:  22] จากคุณ : น้ำนิ่ง เมื่อ 23/1/2554 15:31:43  IP: 223.207.160.96

ขอโค้ดvb6.0 (บันทึก แก้ไข  ลบ) และวิธีการเชื่อมฐานข้อมูล sql server 2005 (ขออย่างละเอียดนะค่ะเพราะว่าหนูไม่มีพื้นฐานเลย) ขอบคุณล่วงหน้านะค่ะ e-mail:napa_1005@hotmail.com

[ความเห็นที่:  23] จากคุณ : Bounmy เมื่อ 11/10/2554 12:46:30  IP: 183.182.127.17

ขอความช่วยเหลือด้วยครับ
ผมมีปัญหาเกืยวกับการเชื่อมต่อ MS SQL SERVER บน Windows Server 2003
ก่อนที่ผมจะเขื่อมต่อกับ SERVER ได้ผมต้อง Connect กับ Server และต้อง Remember User และ Password ก่อนถึงจะเชื่อมต่อกับ SQL SERVER ได้, เชิงมันไม่มีึความปลอดภัย
ดังนั้นผมจึงรู้ว่าวิธีทำการเชื่อมต่อ sql server โดยไม่ต้องมองเห็น server แค่ Ping เลก IP ของ Server ได้เท่านั้น
ขอความกรุณาด้วยนะครับ
E-Mail: bounmy.k@gmail.com

[ความเห็นที่:  24] จากคุณ : gc เมื่อ 9/12/2554 21:22:38  IP: 118.174.86.236

ขอบคุณครับ

[ความเห็นที่:  25] จากคุณ : auntra เมื่อ 26/6/2556 12:23:17  IP: 203.158.160.11

จากหัวข้อหลักการเชื่อมต่อนี้จะสามารถใช้กับ win 7 ได้ไหมครับเพราะตอนนี้ผมมีปัญหาคือไม่สามารถเชื่อมต่อsqlserver ได้รัน xpได้ปกติครับ

[ความเห็นที่:  26] จากคุณ : ธนพิทย์ เมื่อ 18/7/2556 13:52:32  IP: 118.172.34.67

โพสไม่ได้คับ

[ความเห็นที่:  27] จากคุณ : ธนพิทย์ เมื่อ 18/7/2556 14:03:24  IP: 118.172.34.67

อาจารย์คับผมอยากถามเรือง vb6 หน่ยออะคับ พอดีผม จะเอาโปรแกรม โค๊ด VB6 มาต้อเข้ากับฐานข้อมูล sql2008r2 ครับแต่ทำไม่ได้ไม่รู้เข้าต้องเขียนโค๊ดอะไรที่ sql2008 ไหม พอดีผมโปรแกรมสำเร็จแล้วอยากจะเข้าแบบ login ครับ
เป็นโปรแกรมที่คนอื่นเข้าเขียนไว้สำเร็จแล้วแต่จะนำไปใช้ไม่เป็นคับ ผมต้องเริ่มจากตรงใหนก่อนคับ ทำมาเป็นปีละ
เลิกไปหลายพักละครับไม่รู้จะทำไงดี ก็เลยลองมาขอความช่วยเหลือยังดีกว่างมหาในส่ิงที่ยังไม่เคยเรียน รบกวนทีคับ
thanaphit@gmail.com ถ้าอาจารย์อยากดูโปรแกรมของผม เชิญได้เลยคับ ลิ้งมาดูได้คับผมจนปัญญาจริงๆ 0833209597 เบอร์โทรผมคับ 555 คงไม่ว่ากันนะครับ รบกวนทีคับ

[ความเห็นที่:  28] จากคุณ : ธนพิทย์ เมื่อ 19/7/2556 12:47:35  IP: 118.172.8.138

1.พอดโค๊ดที่ login เขียนอย่างนี้คครับ ช่วยทีครับว่าผมจะเอาโปรเจค ของผมไปต่อกับsql2008r2 ได้อย่างไรแล้วผมต้องเขียนเพิ่มบนsql2008r2 อีกไหมครับงงโปรมแกรมนี้เป็นโปรแกรมเกียวกับการเก็บปราวัติลูกสมาชิกครับ
Option Explicit
Dim Conn    As Connection
Dim rsTmp   As New ADODB.Recordset
Dim rsUser  As New ADODB.Recordset
Dim Invalid As Integer
#Const CASE_SENSITIVE_PASSWORD = False
Private Sub Form_KeyPress(KeyAscii As Integer)
        If KeyAscii = 13 Then
                KeyAscii = 0
                SendKeys ("{TAB}")
        End If
End Sub
Private Sub Form_Load()
        Me.Move (Screen.Width - Me.Width) \ 2, (Screen.Height - Me.Height) \ 2
     
        Set Conn = New Connection
        Dim sqlUser As String
        With Conn
                If .State = adStateOpen Then .Close
                .ConnectionString = strConn
                .ConnectionTimeout = 90
                .Open
        End With
        sqlUser = "SELECT UserID FROM tbl_useradmin ORDER BY UserID"
        With rsUser
                If .State = adStateOpen Then .Close
                .ActiveConnection = Conn
                .CursorType = adOpenForwardOnly
                .CursorLocation = adUseClient
                .Open sqlUser
                .MoveLast
                .MoveFirst
                While Not .EOF
                        txtUserName.AddItem .Fields(0).Value
                        .MoveNext
                Wend
        End With
        
        'txtUserName.ListIndex = 0
        'txtPassword.Text = "1234"
        Invalid = 0
End Sub
Private Sub cmdLogin_Click()
        If Trim(txtUserName.Text) = "" Or Len(Trim(txtUserName.Text)) = 0 Then txtUserName.SetFocus: Exit Sub
        If Trim(txtPassword.Text) = "" Or Len(Trim(txtPassword.Text)) = 0 Then txtPassword.SetFocus: Exit Sub
        UserLogin
End Sub
Private Sub UserLogin()
        Dim sqlTmp As String
        sqlTmp = "SELECT * FROM tbl_useradmin "
        sqlTmp = sqlTmp & " WHERE (UserID='" & txtUserName.Text & "')"
        sqlTmp = sqlTmp & " AND (UserPwd='" & txtPassword.Text & "')"
        sqlTmp = sqlTmp & " AND (isStatus='T')"
        With rsTmp
                .ActiveConnection = Conn
                If .State = adStateOpen Then .Close
                .CursorType = adOpenForwardOnly
                .CursorLocation = adUseClient
                .Open sqlTmp
                If .RecordCount <> 0 Then
                        txtPassword.SetFocus
                        txtPassword.Text = ""
                        Unload Me
                        lgname = .Fields("UserName").Value
                        lg = .Fields("UserID").Value
                        lgAuth = .Fields("Auth").Value
                        
                        frmMain.Show
                Else
                        MsgBox "¤Ø³ãÊèª×èÍ ËÃ×ÍÃËÑʼèÒ¹ äÁèÙ¡µéÍ !!!", vbOKOnly + vbCritical, "¼Å¡ÒõÃǨÊͺ"
                        Call WriteLogFile
                        If Invalid = 3 Then
                                Call UpdateInvalidUser
                                MsgBox "¤Ø³ãÊèÃËÑʼԴ 3 ¤ÃÑé ª×èÍáÅÐÃËÑʼèÒ¹¢Í¤Ø³äÁèÊÒÁÒÃãªéÒ¹ä´é ¡ÃسҵԴµèͼÙé´ÙáÅÃкº !!!", vbOKOnly + vbCritical, "ºÑ¹·Ö¡¡Ò÷ÓÒ¹"
                                txtUserName.Enabled = False
                                txtPassword.Enabled = False
                        End If
                        txtPassword.Text = ""
                End If
        End With
End Sub
Private Sub cmdCancel_Click()
        Set Conn = Nothing
        End
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
        If UnloadMode <> 1 Then
                Set Conn = Nothing
                End
                Cancel = True
        End If
End Sub
Private Sub Form_Unload(Cancel As Integer)
        Set rsTmp = Nothing
        Set rsUser = Nothing
        Set Conn = Nothing
End Sub
Private Sub txtPassword_KeyDown(KeyCode As Integer, Shift As Integer)
        If KeyCode = 13 Then
                UserLogin
        End If
End Sub
Private Sub WriteLogFile()
        Dim tmpFreeFile As Integer
        tmpFreeFile = FreeFile
        Open "C:\login.log" For Append As #tmpFreeFile
        Print #tmpFreeFile, "********************************************"
        Print #tmpFreeFile, "ÁÕ¡ÒÃà¢éÒÃкº â´Âãªéª×èÍäÁèµÃ¡ÑºÃËÑʼèÒ¹ :"
        Print #tmpFreeFile, "ª×èÍ Login : " & txtUserName.Text
        Print #tmpFreeFile, "ÃËÑʼèÒ¹    : " & txtPassword.Text
        Print #tmpFreeFile, "àÁ×èÍÇѹ·Õè     : " & Format(Date, "d mmmm yyyy") & " àÇÅÒ : " & Format(Time, "HH:mm:ss")
        Print #tmpFreeFile, ""
        Print #tmpFreeFile, "********************************************"
        Close
        Invalid = Invalid + 1
End Sub
Private Sub UpdateInvalidUser()
        Dim sqlUpdate As String
        Dim comUpdate As New ADODB.Command
        sqlUpdate = "UPDATE tbl_useradmin "
        sqlUpdate = sqlUpdate & " SET isStatus='F'"
        sqlUpdate = sqlUpdate & " WHERE (UserID='" & txtUserName.Text & "')"
        Conn.BeginTrans
        With comUpdate
                .ActiveConnection = Conn
                .CommandType = adCmdText
                .CommandText = sqlUpdate
                .Execute
        End With
        Conn.CommitTrans
End Sub
Private Sub txtUserName_KeyDown(KeyCode As Integer, Shift As Integer)
        txtPassword.Enabled = True
        cmdLogin.Enabled = True
End Sub
2.แล้วก็ modDataBase เป็นงี้ครับ
Option Explicit
Public NPServerMachin As String
'à¡çºË¹èǤÇÒÁ¨Óª×èÍ°Ò¹¢éÍÁÙÅ
Public NPServerData   As String
Public Conn           As Connection
Public strConn        As String
       
Sub Main()
        
        'µÑé¤èÒãËéà¢éÒÖ°Ò¹¢éÍÁÙÅ
        NPServerData = "DeathSociety "
        NPServerMachin = "local"
        
        strConn = "Provider=MSDASQL;" & "Driver={SQL Server};" & " Server=" & NPServerMachin & ";Database=" & NPServerData & ";Uid=sa; " & "Pwd="
        frmLogin.Show
        
        'frmMemberEdit.Show
End Sub


ก่อนการคลิ๊กโพสต์ข้อความ ขอความกรุณาใช้ถ้อยคำที่สุภาพด้วยครับ เว็บไซต์แห่งนี้เป็นแหล่งเผยแพร่ความรู้ ดังนั้นสำหรับท่านที่พยายามจะป่วนเว็บไซต์ หากท่านเป็น "คนไทย" เช่นเดียวกันกับผม ก็ขอความกรุณาได้โปรดเห็นใจ "คนไทย" อีกจำนวนไม่น้อย ที่เข้ามาขอความช่วยเหลือ จากเว็บไซต์ของผมด้วยน่ะครับ และหากท่านใดไม่เข้าใจในตรงจุดไหน ก็ขอให้ระบุสิ่งที่อยากจะถามออกมา บทความของผมแทบทั้งหมดต้องอาศัยทักษะการปฏิบัติเป็นหลัก ดังนั้นขอให้ดู และ ทดสอบจากโค้ดโปรแกรมประกอบตามไปด้วย
IP Address: 54.81.123.248
ชื่อของคุณ:

ข้อคิดเห็น:

2 + 0 = ?  (กรุณาป้อนคำตอบลงในช่องด้านล่างให้เป็น ภาษาไทย ตามผลบวกของตัวเลขให้ถูกต้องก่อนด้วยน่ะครับ เช่น ศูนย์)
  


จี ทู จี เน็ต ดอต คอม - g2gNet Dot Com
เลขทะเบียนพาณิชย์อิเล็กทรอนิกส์ 0407314800231
Copyright © 2005 g2gNet.Com All rights reserved.
Email: thongkorn@hotmail.com หรือ โทร. 08-6862-6560