Народ подскажите новичку (или киньте ссылочку где почитать) как грамотно работать OleDbConnection, OleDbCommand, OleDbDataAdapter, DataSet если таблицы находятся в разных базах на SQL Servere?
Для работы с SQL Server нужно использовать классы из пространства имён
System.Data.SqlClient: SQLConnection, SQLCommand, SQLDataAdapter,
SQLDataReader.
Dim ConnString As String = "Password=JHiheS;Persist Security Info=True;User ID=sa;Initial Catalog=vbnetata Source=SURMENOK\VSdotNET2003"
Private Sub Open()
c = New SqlConnection(ConnString)
End Sub
Public Function Conn() As SqlConnection
If c Is Nothing Then
Open()
End If
If c.State = ConnectionState.Closed Or c.State = ConnectionState.Broken Then
c.Open()
End If
Return c
End Function
Public Sub Close()
If c Is Nothing Then
Exit Sub
End If
If c.State <> ConnectionState.Closed Then
c.Close()
End If
End Sub
End Class
Public Class frmMain
Inherits System.Windows.Forms.Form
'........
Dim DB As New DB
Dim DS As New DataSet
Private Sub LoadUser(ByVal Login As String)
DS.Tables.Clear()
Dim SQL As String = "Select id, login, password, email, remainedtraffic, money, tarif, firstname, secondname, country, city, username From CompressProxyUsers Where login=@login"
Dim Comm As New SqlCommand(SQL, DB.Conn)
Comm.Parameters.Add("@login", SqlDbType.VarChar, 255).Value = Login
Dim DA As New SqlDataAdapter(Comm)
DA.Fill(DS, "CompressProxyUsers")
DB.Close()
Grid.DataSource = DS.Tables(0)
End Sub
Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSave.Click
Dim SQL As String = "Select id, login, password, email, remainedtraffic, money, tarif, firstname, secondname, country, city, username From CompressProxyUsers Where 2=4"
Dim DA As New SqlDataAdapter(SQL, DB.Conn)
Dim CB As New SqlCommandBuilder(DA)
DA.UpdateCommand = CB.GetUpdateCommand
DA.InsertCommand = CB.GetInsertCommand
DA.DeleteCommand = CB.GetDeleteCommand
DA.Update(DS, "CompressProxyUsers")
End Sub
End Class
Здесь идёт подгрузка в DataSet таблицы с одной записью (выборка идёт
по полю Login), затем в другой процедуре идёт сохранения
изменённых/удалённых/добавленных данных назад в БД.