LISTAR VALOR NA COMBOX COM SQL SERVER R2 2008
Olá galera boa tarde, gostaria de uma ajuda se possÃvel,, o cenário é esse: Tenho uma tabela Sexo com PK idSexo que está relacionada com uma FK idSexo da Tabela Usuário, estou tentando listar os sexo na minha combobox e não consigo galera.. alguma dica vai ai o código do método:
/// CODE
Private Sub carregarUsuarioSQL(ByVal idUsuario As Integer)
Dim oc As New SqlConnection()
oc.ConnectionString = [Ô]Data Source=HIGHSOLUTIONS;Initial Catalog=ProjetoTeste;Integrated Security=True[Ô]
oc.Open()
Dim ds As New DataSet
Dim query As String = [Ô][Ô]
query &= [Ô] Select idUsuario, idSexo, UsuarioNome, UsuarioSenha, Sexo.idSexo, Sexo.Sexo From Usuarios, Sexo [Ô]
query &= [Ô] where idUsuario = [Ô] & CStr(idUsuario) & [Ô]AND idSexo = Sexo.idSexo[Ô]
Dim cd As New SqlCommand
cd.Connection = oc
cd.CommandText = query
Dim dr As SqlDataReader = cd.ExecuteReader
If dr.Read Then
Dim usuario As String = CStr(dr([Ô]UsuarioNome[Ô]))
Dim senha As String = CStr(dr([Ô]UsuarioSenha[Ô]))
Dim sexo As Integer = CInt(dr([Ô]idSexo[Ô]))
cboSexoUsuario.SelectedIndex = sexo
txtCodigoUsuario.Text = idUsuario.ToString()
txtNomeUsuario.Text = usuario
txtSenhaUsuario.Text = senha
End If
dr.Close()
oc.Close()
End Sub
/// CODE
Private Sub carregarUsuarioSQL(ByVal idUsuario As Integer)
Dim oc As New SqlConnection()
oc.ConnectionString = [Ô]Data Source=HIGHSOLUTIONS;Initial Catalog=ProjetoTeste;Integrated Security=True[Ô]
oc.Open()
Dim ds As New DataSet
Dim query As String = [Ô][Ô]
query &= [Ô] Select idUsuario, idSexo, UsuarioNome, UsuarioSenha, Sexo.idSexo, Sexo.Sexo From Usuarios, Sexo [Ô]
query &= [Ô] where idUsuario = [Ô] & CStr(idUsuario) & [Ô]AND idSexo = Sexo.idSexo[Ô]
Dim cd As New SqlCommand
cd.Connection = oc
cd.CommandText = query
Dim dr As SqlDataReader = cd.ExecuteReader
If dr.Read Then
Dim usuario As String = CStr(dr([Ô]UsuarioNome[Ô]))
Dim senha As String = CStr(dr([Ô]UsuarioSenha[Ô]))
Dim sexo As Integer = CInt(dr([Ô]idSexo[Ô]))
cboSexoUsuario.SelectedIndex = sexo
txtCodigoUsuario.Text = idUsuario.ToString()
txtNomeUsuario.Text = usuario
txtSenhaUsuario.Text = senha
End If
dr.Close()
oc.Close()
End Sub
Monte a query assim
query &= [Ô] Select A.idUsuario,A.idSexo,A. UsuarioNome,A. UsuarioSenha,B.idSexo,B.Sexo From Usuarios as A, Sexo as B [Ô]
query &= [Ô] where A.idSexo=B.idSexo AND A. idUsuario = [Ô] & CStr(idUsuario) & [Ô]AND A.idSexo = Sexo.idSexo[Ô]
query &= [Ô] Select A.idUsuario,A.idSexo,A. UsuarioNome,A. UsuarioSenha,B.idSexo,B.Sexo From Usuarios as A, Sexo as B [Ô]
query &= [Ô] where A.idSexo=B.idSexo AND A. idUsuario = [Ô] & CStr(idUsuario) & [Ô]AND A.idSexo = Sexo.idSexo[Ô]
Ou assim
query &= [Ô] Select A.idUsuario,A.idSexo,A. UsuarioNome,A. UsuarioSenha,B.idSexo,B.Sexo From Usuarios as A, Sexo as B [Ô]
query &= [Ô] where A.idSexo=B.idSexo AND A. idUsuario = [Ô] & CStr(idUsuario)
query &= [Ô] Select A.idUsuario,A.idSexo,A. UsuarioNome,A. UsuarioSenha,B.idSexo,B.Sexo From Usuarios as A, Sexo as B [Ô]
query &= [Ô] where A.idSexo=B.idSexo AND A. idUsuario = [Ô] & CStr(idUsuario)
Vlw, mas tipo eu estou Win Forms...com VB.NET.... vai ter alguma problema?
Não funcionou .. está dando erro bem nesta parte...
[Ô] From Usuarios as A[Ô], na letra [Ô]A[Ô]......
[Ô] From Usuarios as A[Ô], na letra [Ô]A[Ô]......
qual é a estrutura da suas tabelas
Veja ai a estrutura...:
Conseguir ... somente listar a idSexo e depois gravar utilizando a idSexo.... só que gostaria que quando o meu método listassem.. também os nomes que estão na tabela Sexo, eu só consegui listar a idSexo...somente..
Tente assim
query &= [Ô]Select Usuarios.idUsuario, Usuarios.idSexo, Usuarios.UsuarioNome, Usuarios.UsuarioSenha, Sexo.Sexo From Usuarios,Sexo[Ô]
query &= [Ô] Where Usuarios.IdUsuario = [Ô] & CStr(idUsuario) & [Ô] And Usuarios.idSexo=Sexo.idSexo [Ô]
Dim usuario As String = CStr(dr([Ô]UsuarioNome[Ô]))
Dim senha As String = CStr(dr([Ô]UsuarioSenha[Ô]))
[ô] Dim sexo As Integer = CInt(dr([Ô]idSexo[Ô]))
[ô]cboSexoUsuario.SelectedIndex = sexo
cboSexoUsuario.Items.Add(dr.Item([Ô]sexo[Ô]))
txtCodigoUsuario.Text = idUsuario.ToString()
txtNomeUsuario.Text = usuario
txtSenhaUsuario.Text = senha
query &= [Ô]Select Usuarios.idUsuario, Usuarios.idSexo, Usuarios.UsuarioNome, Usuarios.UsuarioSenha, Sexo.Sexo From Usuarios,Sexo[Ô]
query &= [Ô] Where Usuarios.IdUsuario = [Ô] & CStr(idUsuario) & [Ô] And Usuarios.idSexo=Sexo.idSexo [Ô]
Dim usuario As String = CStr(dr([Ô]UsuarioNome[Ô]))
Dim senha As String = CStr(dr([Ô]UsuarioSenha[Ô]))
[ô] Dim sexo As Integer = CInt(dr([Ô]idSexo[Ô]))
[ô]cboSexoUsuario.SelectedIndex = sexo
cboSexoUsuario.Items.Add(dr.Item([Ô]sexo[Ô]))
txtCodigoUsuario.Text = idUsuario.ToString()
txtNomeUsuario.Text = usuario
txtSenhaUsuario.Text = senha
Blz..vou testar aqui....vlw obrigado
Pronto conseguir desta forma.
//Code
Private Sub carregarUsuarioSQL(ByVal idUsuario As Integer)
Dim oc As New SqlConnection()
oc.ConnectionString = [Ô]Data Source=SOLUTIONS-PC;Initial Catalog=ProjetoTeste;Integrated Security=True[Ô]
oc.Open()
Try
Dim ds As New DataSet
Dim query As String = [Ô][Ô]
query &= [Ô] Select U.idUsuario, U.idSexo, U.UsuarioNome, U.UsuarioSenha, S.SexoId, S.SexoNome From Usuarios As U, Sexo As S[Ô]
query &= [Ô] where U.idUsuario = [Ô] & CStr(idUsuario) & [Ô]AND U.idSexo = S.SexoId[Ô]
Dim cd As New SqlCommand
cd.Connection = oc
cd.CommandText = query
Dim dr As SqlDataReader = cd.ExecuteReader
If dr.Read Then
Dim usuario As String = CStr(dr([Ô]UsuarioNome[Ô]))
Dim senha As String = CStr(dr([Ô]UsuarioSenha[Ô]))
Dim sexo As String = CStr(dr([Ô]SexoNome[Ô]))
txtCodigoUsuario.Text = idUsuario.ToString()
txtNomeUsuario.Text = usuario
txtSenhaUsuario.Text = senha
cboSexoUsuario.SelectedText = sexo
MessageBox.Show([Ô]Valor: [Ô] + txtNomeUsuario.Text)
End If
dr.Close()
Catch ex As Exception
MessageBox.Show([Ô]Erro: [Ô] + ex.Message)
End Try
oc.Close()
End Sub
O único problema é na hora de atualizar o campo, o idSexo não está recebendo o valor que está no meu combo box.
//Code
Private Sub carregarUsuarioSQL(ByVal idUsuario As Integer)
Dim oc As New SqlConnection()
oc.ConnectionString = [Ô]Data Source=SOLUTIONS-PC;Initial Catalog=ProjetoTeste;Integrated Security=True[Ô]
oc.Open()
Try
Dim ds As New DataSet
Dim query As String = [Ô][Ô]
query &= [Ô] Select U.idUsuario, U.idSexo, U.UsuarioNome, U.UsuarioSenha, S.SexoId, S.SexoNome From Usuarios As U, Sexo As S[Ô]
query &= [Ô] where U.idUsuario = [Ô] & CStr(idUsuario) & [Ô]AND U.idSexo = S.SexoId[Ô]
Dim cd As New SqlCommand
cd.Connection = oc
cd.CommandText = query
Dim dr As SqlDataReader = cd.ExecuteReader
If dr.Read Then
Dim usuario As String = CStr(dr([Ô]UsuarioNome[Ô]))
Dim senha As String = CStr(dr([Ô]UsuarioSenha[Ô]))
Dim sexo As String = CStr(dr([Ô]SexoNome[Ô]))
txtCodigoUsuario.Text = idUsuario.ToString()
txtNomeUsuario.Text = usuario
txtSenhaUsuario.Text = senha
cboSexoUsuario.SelectedText = sexo
MessageBox.Show([Ô]Valor: [Ô] + txtNomeUsuario.Text)
End If
dr.Close()
Catch ex As Exception
MessageBox.Show([Ô]Erro: [Ô] + ex.Message)
End Try
oc.Close()
End Sub
O único problema é na hora de atualizar o campo, o idSexo não está recebendo o valor que está no meu combo box.
Tópico encerrado , respostas não são mais permitidas