Jump to content
s3c0

Erro Insert MySQL

Recommended Posts

Prezados,

 

Bom dia. Estou enfrentando um "problema" com os bancos de dados MySQL após mudança de servidor.

 

O problema é devido ao não preenchimento das colunas das tabelas.

 

No outro servidor, passava normalmente... porém nesse servidor, sempre gera erro.

 

As colunas não estão setadas para aceitar NULL, porém se eu não inserir todas as colunas no INSERT, o erro é gerado.

 

É possivel configurar para que o MySQL "aceite"? Já que o antigo servidor passava direto.

 

Servidor: Windows Server

Share this post


Link to post
Share on other sites

Publique , se possível , a estrutura da tabela , o comando e a mensagem de erro para facilitar a resposta.

Share this post


Link to post
Share on other sites
7 horas atrás, Motta disse:

Publique , se possível , a estrutura da tabela , o comando e a mensagem de erro para facilitar a resposta.

 

Olá @Motta, obrigado pela resposta.

 

Segue detalhes:

 

Estrutura da Tabela:

CREATE TABLE `cesta` (
  `id` int(11) NOT NULL,
  `compra` varchar(50) NOT NULL,
  `produto` varchar(50) NOT NULL,
  `quantidade` varchar(50) NOT NULL,
  `especificacao` varchar(50) NOT NULL,
  `desconto` varchar(11) NOT NULL,
  `conjugado` varchar(11) NOT NULL,
  `preco1` varchar(25) NOT NULL,
  `cod_produto1` varchar(50) NOT NULL,
  `fabricante_produto1` varchar(50) NOT NULL,
  `desc_produto1` varchar(255) NOT NULL,
  `preco2` varchar(25) NOT NULL,
  `cod_produto2` varchar(50) NOT NULL,
  `fabricante_produto2` varchar(50) NOT NULL,
  `desc_produto2` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

ALTER TABLE `cesta`
  ADD PRIMARY KEY (`id`);

ALTER TABLE `cesta`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
COMMIT;

 

Erro:

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[MySQL][ODBC 5.3(a) Driver][mysqld-5.7.25]Field 'especificacao' doesn't have a default value

pedidos.asp, line 56

 

Linha 56

conexao.execute("INSERT INTO cesta (compra,produto,quantidade,preco1,cod_produto1,fabricante_produto1,desc_produto1) values ('"&npedido&"','"&produto1&"','"&qtde1&"','"&preco_prod1&"','"&cod_prod1&"','"&nomefab_prod1&"','"&nome_prod1&"')")

 

Share this post


Link to post
Share on other sites

especificacao é not null e não  e tem valor default ,

No insert não foi informado , coluna e calor.

 

Share this post


Link to post
Share on other sites
14 horas atrás, Motta disse:

especificacao é not null e não  e tem valor default ,

No insert não foi informado , coluna e calor.

 

 

Olá @Motta, obrigado pela resposta.

 

Me surgiu uma dúvida... como no outro servidor estava funcionando normalmente? Será que ao exportar o banco de dados, teve uma alteração na estrutura das tabelas?

Share this post


Link to post
Share on other sites

Bem provável.

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By MateusOFCZ
      Olá, estou desenvolvendo um projeto de registro de clientes em java no netbeans e usando o MySQL Workbench e Xampp, gostaria de saber se é possível fazer com que o programa fique verificando se está conectado com o banco de dados, e caso não esteja ele mostra uma mensagem pedindo para o usuário se conectar em uma rede, caso ele se conecte o programa irá esconder essa mensagem e funcionará normalmente.

      Eu consegui fazer com que ele mostre se está conectado ou não, porém se eu desligar o servidor ele não atualiza mostrando que está offline, ele continua como online...
    • By wesleycsilva
      Tem uma tabela que relaciona os produtos de uma determinada compra, onde preciso consultar diversos produtos e retornar os ids das compras que tenham todos os produtos que consultei, em uma estrutura parecida com o exemplo abaixo:
       
      SELECT  * FROM  produtos_has_compras WHERE (idProduto = 6 AND idProduto = 77 AND idProduto = 11) GROUP BY idCompra;
       
      Alguém teria uma solução que possa me ajudar?
    • By bradry
      Olá galera !
       
      Tenho uma dúvida referente aos operadores de pesquisa. Tenho uma  tabela com a seguinte estrutura
       
      id integer, CPF varchar ( 20 ), SCORE_CUSTOM varchar ( 20 ),  SCORE varchar ( 20 ), SCORE_CCOG varchar ( 20 ), RESTRITIVO varchar ( 20 ) );
       
      Quando faço uma pesquisa da maneira a baixo colocando aspas simples no ZERO retorna erro, agora quando faço a mesma pesquisa sem aspas me retorna o resultado esperado.
       
      select * from score
      where RESTRITIVO ='0' 
      and SCORE_CUSTOM >=100
      and SCORE_CUSTOM <=200;
       
      Só queria entender se esse funcionamento de aspas vale para tudo que vou pesquisa ou se tem que ser usado em casos específicos. Não consegui encontrar nada sobre na web.
    • By Sapinn
      Salve quebrada, firmesa? É o seguinte estou desenvolvendo um web site em que os aluno enviam textos para o professor corrigir. O que eu quero é que quando o professor corrigir o texto e aluno for ver mostrar o que foi corrigido. 
      Por exemplo se o aluno digitar a seguinte frase:
      Eu gosta mas de você.
      Quando ele for ver a correção terá:
      Eu gosto mas(o correto seria "mais") de você.
       
      Alguém pode me ajudar aqui?
       
    • By jeanzinsousa
      Salve, Galera estou com uma dúvida estudando banco de dados e programação.
       
      escrevi a seguinte query:
       
      SELECT data_pg as diaria, SUM(valor_pg) as valor_diario, SUM(valor_despesa) as valor_despesa, (SELECT SUM(valor_pg) as dinheiro FROM pagamento WHERE tipo = 5 AND MONTH(data_pg) = 06 AND YEAR(data_pg) = 2019) as total_dinheiro, (SELECTSUM(valor_pg) as debito FROM pagamento WHERE tipo = 25 AND MONTH(data_pg) = 06 AND YEAR(data_pg) = 2019) as total_debito, (SELECT SUM(valor_pg) as credito FROM pagamento WHERE tipo = 15 AND MONTH(data_pg) = 06 AND YEAR(data_pg) = 2019) astotal_credito FROM pagamento WHERE MONTH(data_pg) = 06 AND YEAR(data_pg) = 2019 GROUP BY diaria ORDER BY `diaria`
       
      resultado:
      diaria  1 valor_diario valor_despesa total_dinheiro total_debito total_credito   2019-06-10 818.70 0 288.40 586.95 113.30 2019-06-11 169.95 0 288.40 586.95 113.30
       
       
       
       
      Como podem ver meu objetivo e separar por dia o resultado dos valores divididos por tipo de pagamento.
      porém o mesmo mostra a soma total nas subquery.
      quando coloco o group by order by dentro das subquerys apresenta a seguinte mensagem de erro: #1242 - Subquery returns more than 1 row 
       
       
      como resolver?
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.