PDA

View Full Version : کمک در مورد استفاده از يک کلاس



bardia goharbin
سه شنبه 12 شهریور 1387, 14:35 عصر
من يک کلاسي را براي انجام ارتباط با ديتابيس دانلود کردم ولي نحوه استفاده از يکي از فانکشنهاي آنرا متوجه نشدم دوستان اگر نحوه استفاده از فانکشن NonQuery موجود در اين کلاس را به جهت ايجاد يا آپديت کردن يک رکورد در ديتابيس را يک کمي توضيح بدهند و يا نمونه کدي ارائه دهند ممنون ميشوم. در اصل من نتوانستم پارامترهاي مورد نياز فانکشن NonQuery که از نوع SqlParameter هست را به آن پاس کنم و CommandType من هم از نوع Text انتخاب شده بود.


اين هم کد کلاس مورد اشاره :


Imports Microsoft.VisualBasic
Imports System
Imports System.Data
Imports System.Data.SqlClient
Public Class MySql

Shared SqlConn As SqlConnection = Nothing
Shared SqlComm As SqlCommand = Nothing
Shared SqlDA As SqlDataAdapter = Nothing
Shared SqlTA As SqlTransaction = Nothing


' Creats a collection of parameters.
Public Shared ReadOnly Property Parameters() As SqlParameterCollection
Get
Return SqlComm.Parameters
End Get
End Property


'Used to make a connection to the database.
Public Shared Sub Connect(ByVal ConnectionString As String)
SqlConn = New SqlConnection(ConnectionString)
SqlConn.Open()
End Sub
' Used to close the connection to the database.
Public Shared Sub Disconnect()
SqlConn.Close()
End Sub


' Execute an insert, update, or delete.
Public Shared Function NonQuery(ByVal CommandText As String, _
ByVal CommandType As CommandType, Optional _
ByVal Parameters() As SqlParameter = Nothing) As Integer

Dim res As Integer
SqlComm = New SqlCommand(CommandText, SqlConn)
SqlComm.CommandType = CommandType
If Not Parameters Is Nothing Then
For i As Integer = 0 To Parameters.Length - 1
SqlComm.Parameters.Add(Parameters(i))
Next
End If
res = SqlComm.ExecuteNonQuery()
Return res
End Function
End Class

bardia goharbin
سه شنبه 12 شهریور 1387, 15:55 عصر
جواب رو پيدا کردم،

MySql.Connect(ConnectionString)

Dim strSQL As String = "INSERT INTO tblContacts (FirstName, LastName, PhoneNumber, Email)
VALUES (@FirstName, @lastName, @PhoneNumber, @Email)"

Dim Parameters(0 To 3) As SqlParameter
Parameters(0) = New SqlParameter("FirstName", CStr("Testy"))
Parameters(1) = New SqlParameter("LastName", CStr("McTester"))
Parameters(2) = New SqlParameter("PhoneNumber", CStr("565-552-6565"))
Parameters(3) = New SqlParameter("Email", CStr("test@test.com"))
MySql.NonQuery(strSQL, CommandType.Text, Parameters)

MySql.Disconnect()