Bueno amigo root yo lo ubiera hecho asi, en VB, sin mucho rollo
Dim DS As DataSet
Dim MyConnection As SqlConnection
Dim MyCommand As SqlDataAdapter
Dim sqrSQL As String = "select * from Provedores"
sqrSQL += " INNER JOIN Estado, Ciudad, Ubicacion"
sqrSQL += " ON Provedores.EstadoID= Estado.EstadoID"
sqrSQL += " AND Provedores.CiudadID= Ciudad.CiudadID"
sqrSQL += " AND Proveedores.UbicacionID= Ubicacion.UbicacionID"
MyConnection = New SqlConnection("SERVER=MDS01; DATABASE=be; INTEGRATED SECURITY=false;PASSWORD=sa;USER=sa")
MyCommand = New SqlDataAdapter(sqrSQL, MyConnection)
DS = new DataSet()
MyCommand.Fill(DS, "Proveedores")
MyDataGrid.DataSource=DS.Tables("Proveedores").Def aultView
MyDataGrid.DataBind()
tengo otra duda el proyecto que estoy revisando el que tiene todo en c#
tiene un objeto sqladaptar y sqlconnection y un dataset
en las propiedades del objeto sqlconnection lo que yo pongo asi
MyConnection = New SqlConnection("SERVER=MDS01; DATABASE=be; INTEGRATED SECURITY=false;PASSWORD=sa;USER=sa")
en las propiedades del objeto sqladaptar pues establece el string
es decir la tabla de la base de datos a consultar con todos sus campos
mi pregunta esto
sqrSQL += " INNER JOIN Estado, Ciudad, Ubicacion"
sqrSQL += " ON Provedores.EstadoID= Estado.EstadoID"
sqrSQL += " AND Provedores.CiudadID= Ciudad.CiudadID"
sqrSQL += " AND Proveedores.UbicacionID= Ubicacion.UbicacionID"
en donde lo defino?