footboyedit Posted February 10, 2016 at 10:31 AM Report Share #593300 Posted February 10, 2016 at 10:31 AM (edited) Dim query As String = "SELECT * FROM Funcionarios, Funcoes WHERE Funcionarios.Funcao =Funcoes.Funcao AND Funcionarios.Funcionario ='" & stext & "'" Dim command As SqlCommand = New SqlCommand(query, command) datard = command.ExecuteReader(CommandBehavior.SingleRow) If datard.HasRows Then darard.Read() comboFuncionario.Text = stext.ToString comboFuncao.Text = datard.Item("Funcoes.Descricao").ToString <--- o erro é aqui End If Bom dia, tenho isto. Só que queria que na comboFuncao em vez de ir buscar a descricao à tabela Funcionarios fosse buscar a descricao da tabela Funcoes mas assim nao da. Obrigado Edited February 15, 2016 at 12:37 AM by apocsantos Link to comment Share on other sites More sharing options...
Cerzedelo Posted February 10, 2016 at 11:30 AM Report Share #593303 Posted February 10, 2016 at 11:30 AM Assim á primeira vista, a query sql está mal feita. Quando se trata de ir buscar dados a 2 ou mais tabelas tem de usar o JOIN. Ver http://www.w3schools.com/sql/sql_join.asp Link to comment Share on other sites More sharing options...
footboyedit Posted February 10, 2016 at 03:43 PM Author Report Share #593310 Posted February 10, 2016 at 03:43 PM (edited) Já consegui resolver isso. E se eu quiser adicionar dados? Por exemplo pra adicionar na combobox meter a Descricao e adicionar na tabela Funcionarios a Funcao associada a essa Descricap da tabela Funcoes? Edited February 10, 2016 at 03:52 PM by footboyedit Link to comment Share on other sites More sharing options...
Cerzedelo Posted February 10, 2016 at 06:01 PM Report Share #593319 Posted February 10, 2016 at 06:01 PM Não entendi muito bem a sua questão. Pretende adicionar à combobox ou à base de dados? A combbox e uma caixa só de leitura. E na base de dados, o modelo é usar as chaves estrangeiras para registar os dados para não os duplicar. Não deve adicionar na tabela funcionários uma função quando tem uma outra tabela das funções. Link to comment Share on other sites More sharing options...
footboyedit Posted February 10, 2016 at 06:20 PM Author Report Share #593320 Posted February 10, 2016 at 06:20 PM Não entendi muito bem a sua questão. Pretende adicionar à combobox ou à base de dados? A combbox e uma caixa só de leitura. E na base de dados, o modelo é usar as chaves estrangeiras para registar os dados para não os duplicar. Não deve adicionar na tabela funcionários uma função quando tem uma outra tabela das funções. Eu quero adicionar na base de dados através da combobox. So que quero que na combobox adicione as descriçoes que estao na tabela Funcoes e que correspondem a funcao da tabela Funcionarios- Link to comment Share on other sites More sharing options...
Cerzedelo Posted February 11, 2016 at 08:48 AM Report Share #593336 Posted February 11, 2016 at 08:48 AM Para adicionar na base de dados, basta pegar o valor da combobox, com o comando SelectetItem.Value ou SelectedItem.ToString e depois colocá-la no comando do SQL, INSERT. Ver: https://msdn.microsoft.com/en-us/library/system.windows.forms.combobox.selecteditem(v=vs.110).aspx?cs-save-lang=1&cs-lang=vb#code-snippet-1 Quanto a segunda questão, se so quer a descrição, ao fazer o SELECT em vez de fazer a tudo com o *, faz SELECT Funções.Descricao FROM Funções JOIN Funcionários WHERE Funções.Funcao=Funcinario.Funcao Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now