PDA

View Full Version : Provider مشترک برای اکسس و اس گیو ال



jk
شنبه 15 اسفند 1394, 02:55 صبح
Provider مشترکی برای ConnectionString می خوام که بتونم هم با اکسس کار بکنم و هم با SQL server

hamidrezax1
شنبه 15 اسفند 1394, 09:54 صبح
یه شرط بزار
با یه if کارتون راه میوفته

gilsoft
یک شنبه 16 اسفند 1394, 01:39 صبح
سلام دوست عزیز

من یه نمونه کوچک برات نوشتم .. باقی‌شو باید خودت الگو بگیری:
Imports System.Data
Imports System.Data.Odbc
Imports System.Data.OleDb
Imports System.Data.SqlClient

Public Class Form1
Enum eDbType
Access
Sql
Foxpro
End Enum

Private CnnStr As String = ""

Private ODSB As Odbc.OdbcConnectionStringBuilder
Private OLSB As OleDb.OleDbConnectionStringBuilder
Private SCSB As SqlConnectionStringBuilder


Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load

CnnStr = GetConnectionString(eDbType.Access)

End Sub

Function GetConnectionString(_DbType As eDbType) As String
Dim Value As String = ""
Dim DbFile As String = ""
Select Case _DbType
' OleDb
Case eDbType.Access
With OLSB
.Provider = "Microsoft.Jet.OLEDB.4.0"
.DataSource = "C:\Sample.mdb"
.PersistSecurityInfo = True
End With
Value = OLSB.ConnectionString

Case eDbType.Sql
' Sql
With SCSB
.DataSource = "(Local)"
.InitialCatalog = "Data1"
.UserID = "User1"
.Password = "sa"
.IntegratedSecurity = True
.ConnectTimeout = 30
End With
Value = SCSB.ConnectionString

Case eDbType.Foxpro
' Odbc
DbFile = "c:\acc.dbf"
Value = "Driver={Microsoft FoxPro VFP Driver (*.dbf)};sourcedb=" & DbFile & ";sourcetype=DBF;exclusive=No;backgroundfetch=Yes;c ollate=Machine;null=Yes;deleted=Yes"
Case Else
MessageBox.Show("Undefined Db Type !")
Value = "Error"
End Select
Return (Value)

End Function
End Class



موفق باشید .....