Unconfigured Ad Widget

Collapse

Anúncio

Collapse
No announcement yet.

Inserir dados em um banco com relacionamentos

Collapse
X
 
  • Filter
  • Tempo
  • Show
Clear All
new posts

  • Font Size
    #1

    C# Inserir dados em um banco com relacionamentos

    Boa tarde,
    Estou com um problema para inserir um formulário aqui qlquer, vou tentar ser claro!
    Formulário:
    IdNE(pk)
    NE
    EMPRESA(FK)
    UGR(FK)

    Qndo vou inserir a EMPRESA e a UGR, ele só aceita o número do ID:

    por exemplo Empresa1:
    IdEmpresa = 1 (PK)
    strCNPJ = 00.000.000/0001-00
    strNomeEmpresa

    Daí, para eu inserir empresa no meu formulário, se eu digito "1"insere. Seu eu digito "00.000.000/0001-00", dá erro
    E a msma coisa pra UGR.
    Alguém aí, pode me ajudar!!
    Desde já agradeço

  • Font Size
    #2
    quanto dancos são? 2 ou 3? se caso for 3 porque os 3? supondo que o primeiro seja Empresa quais são os outros, pelo que entendi vc tá tentando cadastrar novamente o nome da empresa, assim não funciona, posta ai as tabelas pra poder te ajudar, senão não tem como.

    Comment


    • Font Size
      #3
      O seguinte eu Cadastro uma NE... essa NE é composta pelo número da própria, Empresa(que no caso já está cadastrada no banco, pq se ñ estiver ele vai pedir para cadastrar primeiro a empresa), e a UGR.

      NE = 2010NE......
      Empresa = 00.000.000/0001-00 (já cadastrada na tabela Empresa);
      UGR = 201017 (um código interno, e está definidas no banco);

      Conseguiu entender brother?

      Comment


      • Font Size
        #4
        não entendi, posta ai as tabela e o formato dos campos que vc precisa cadastrar ou alterar, desse jeito que vc tá dizendo não dá pra entender o que vc quer fazer ou porque não está funcionando.

        Comment


        • Font Size
          #5
          [IMG]C:\Users\Dyogo\Pictures[/IMG]

          Comment


          • Font Size
            #6
            Pô velho me desculpe aí, mas ñ consigo postar imagem aqui não! deixa quieto... mas obrigado pela vontade de me ajudar

            Comment


            • Font Size
              #7
              vc não precisa mostrar nenhuma imagem basta postar o código (SQL) das tabelas envolvidas

              este código abaixo é uma tabela né? então vamos chama-lo de tabela1
              IdNE(pk) <- este é o ID
              NE <- e este campo qual é e que tipo de dado será armazenado nele?
              EMPRESA(FK) <- este é chave estrangeira referênte a qual tabela?
              UGR(FK) <- e esta outra chave estrangeira? então terá 3 tabelas, quais são elas?

              este outro é outra tabela? se sim esta é a tabela2
              IdEmpresa = 1 (PK)
              strCNPJ = 00.000.000/0001-00
              strNomeEmpresa

              basta postar a estrutura das tabelas como:

              tabela1
              ID int (PK)
              NE varchar(30)
              EMPRESA (se for uma (FK) então provavelmente será do tipo int, de qual tabela?)
              UGR (int (FK) de qual tabela?)

              se explicar melhor e mostrar o SQL das tabelas fica melhor te ajudar, pelo que vi parece que terá que usar INNER JOIN para cadastrar ou então vc tá usando um tipo de dado diferente na hora da inserção, como: vc quer cadastrar um tipo string num campo inteiro.

              Comment


              • Font Size
                #8
                Vamos la Sérgio.

                tblNE: tblEmpresa:

                IdNE (INT)(PK) IdEmpresa(INT)(PK) faz referencia a (intEmpresa)
                strNE(VARCHAR) strCNPJ(VARCHAR)
                intEmpresa(INT)(FK) strEmpresa(VARCHAR)
                intUGR(INT)(FK)

                tblUGR:

                IdUGR(INT)(PK) faz referencia a intUGR
                intUGR(INT)
                __________________________________________________ __________________

                tblEmpresa: IdEmpresa = 1; strCNPJ = "00.000.000/0001-00"; strEmpresa = "Empresa qualquer"
                __________________________________________________ __________________

                tblUGR: IdUGR = "1"; intUGR = "201017"

                __________________________________________________ __________________

                tblNE: IdNE = "1"; strNE = "2010NE9000001"; intCNPJ = "1" (SE EU DIGITAR O "00.000.000/0001-00") dá erro, só aceita o índice; intUGR = "1"(SE EU DIGITAR "201017")dá erro!

                Comment


                • Font Size
                  #9
                  Desconsidere o primeiro post!

                  Vamos la Sérgio.

                  tblNE:

                  IdNE (INT)(PK)
                  strNE(VARCHAR)
                  intEmpresa(INT)
                  intUGR(INT)(FK)

                  tblEmpresa:

                  IdEmpresa(INT)(PK) faz referencia a (intEmpresa)
                  strCNPJ(VARCHAR)
                  strEmpresa(VARCHAR)


                  tblUGR:

                  IdUGR(INT)(PK) faz referencia a intUGR
                  intUGR(INT)
                  __________________________________________________ __________________

                  tblEmpresa: IdEmpresa = "1"; strCNPJ = "00.000.000/0001-00" ; strEmpresa = "Empresa qualquer"
                  __________________________________________________ __________________

                  tblUGR: IdUGR = "1" ; intUGR = "201017"
                  __________________________________________________ __________________

                  tblNE: IdNE = "1" ; strNE = "2010NE9000001" ; intCNPJ = "1" (SE EU DIGITAR O "00.000.000/0001-00" ) dá erro, só aceita o índice; intUGR = "1" (SE EU DIGITAR "201017")dá erro!

                  Comment


                  • Font Size
                    #10
                    gladyogo, como eu imaginava vc está tentando inserir um valor inválido nos campos, sua tabela tem que ser assim:

                    tblNE:

                    IdNE (INT)(PK)
                    strNE(VARCHAR)
                    intEmpresa(INT)
                    intUGR(INT)(FK)

                    tblEmpresa:

                    IdEmpresa(INT)(PK) faz referencia a (intEmpresa)
                    strCNPJ varchar(18)
                    strEmpresa varchar(50)


                    tblUGR:

                    IdUGR(INT)(PK) faz referencia a intUGR
                    intUGR(INT)

                    Outra coisa é que não existe o campo intCNPJ na tabela NE nem o campo intUGR, eles são das outras tabelas porém o que faz a referência a elas é exatamente as chaves estrangeiras, fica difícil te explicar por aqui como funciona vc precisa de dar uma estudada pra entender porque é meio complicado explicar assim em poucas linhas, precisa saber exatamente como funciona senão o que eu te disse vai ser apenas uma "receita de bolo" e vc não vai sair disso (vai ficar sem entender), então pega ai no forum umas apostilas ou video aulas de MySql ou alguma linguagem SQL, eu também quando não entendia nada não conseguia ajuda porque tem que se saber pelo menos o básico e muito bem pra conseguir entender as explicações, dá umas estudadas mais na linguagem SQL que não é dificil não.

                    Comment

                    X
                    Working...
                    X