INSERT INTO COM FIREBIRD

JUNIOR.STATUS 10/04/2013 08:07:03
#421721
BOM DIA AMIGOS



sql = [Ô]INSERT INTO INVENTARIO (cprod, xprod, ean, ncm, und, qtd, unt, picms, cod_part, vl_item, ind_prop, cod_cta) values ([ô][Ô] _
& CStr(W_Codigo) _
& [Ô][ô],[ô][Ô] & W_Descricao _
& [Ô][ô],[ô][Ô] & CStr(W_Ean) _
& [Ô][ô],[ô][Ô] & CStr(W_Ncm) _
& [Ô][ô],[ô][Ô] & W_Medida _
& [Ô][ô],[ô][Ô] & CStr(W_Estoque) _
& [Ô][ô],[ô][Ô] & CStr(W_Unitario) _
& [Ô][ô],[ô]0[ô],[ô]0[ô],[ô][Ô] & CStr(W_Total) _
& [Ô][ô],[ô]0[ô],[ô]0[ô])[Ô]
conn.Execute (sql) [ô] O ERRO OCORRE AQUI
conn.CommitTrans


ERRO...> attempted update of read-only column

SINKERTEC 10/04/2013 11:47:37
#421733

Brother

Esse campo de código aí? é que tipo?

se for autoincrement...vai dar erro mesmo
JUNIOR.STATUS 10/04/2013 14:41:50
#421748
ola SINKERTEC

nao é, ele é VARCHAR podera ver na imagem anexa

OMAR2011 10/04/2013 16:09:53
#421754
Fiz um teste com meu firebird e gravou no primeiro teste.
Private Sub Command13_Click()
Dim W_Codigo As String, W_Descricao As String, W_Ean As String, W_Ncm As String
Dim W_Medida As String
Dim W_Estoque As Double, W_Unitario As Double, W_Total As Double
W_Codigo = [Ô]34RERT34[Ô]
W_Descricao = [Ô]MALHA34[Ô]
W_Ean = [Ô]93RT[Ô]
W_Ncm = [Ô]84RYTU[Ô]
W_Medida = [Ô]12QWER[Ô]
W_Estoque = [Ô]1.234[Ô]
W_Unitario = [Ô]1.434[Ô]
W_Total = [Ô]0.345[Ô]
sql = [Ô]INSERT INTO INVENTARIO (cprod, xprod, ean, ncm, und, qtd, unt, picms, cod_part, vl_item, ind_prop, cod_cta) values ([ô][Ô] _
& CStr(W_Codigo) _
& [Ô][ô],[ô][Ô] & W_Descricao _
& [Ô][ô],[ô][Ô] & CStr(W_Ean) _
& [Ô][ô],[ô][Ô] & CStr(W_Ncm) _
& [Ô][ô],[ô][Ô] & W_Medida _
& [Ô][ô],[ô][Ô] & CStr(W_Estoque) _
& [Ô][ô],[ô][Ô] & CStr(W_Unitario) _
& [Ô][ô],[ô]0[ô],[ô]0[ô],[ô][Ô] & CStr(W_Total) _
& [Ô][ô],[ô]0[ô],[ô]0[ô])[Ô]
cn.Execute (sql) [ô] O ERRO OCORRE AQUI
cn.CommitTrans

End Sub

Você abriu a conexão para gravar.
JUNIOR.STATUS 10/04/2013 16:46:47
#421756
omar, to usando assim :

conn.BeginTrans
Dim sql As Variant

sql = [Ô]INSERT INTO INVENTARIO (cprod, xprod, ean, ncm, und, qtd, unt, picms, cod_part, vl_item, ind_prop, cod_cta) values ([ô][Ô] _
& CStr(W_Codigo) _
& [Ô][ô],[ô][Ô] & W_Descricao _
& [Ô][ô],[ô][Ô] & CStr(W_Ean) _
& [Ô][ô],[ô][Ô] & CStr(W_Ncm) _
& [Ô][ô],[ô][Ô] & W_Medida _
& [Ô][ô],[ô][Ô] & CStr(W_Estoque) _
& [Ô][ô],[ô][Ô] & CStr(W_Unitario) _
& [Ô][ô],[ô]0[ô],[ô]0[ô],[ô][Ô] & CStr(W_Total) _
& [Ô][ô],[ô]0[ô],[ô]0[ô])[Ô]

conn.Execute (sql)
conn.CommitTrans

OMAR2011 10/04/2013 17:12:24
#421759
é a cópia do seu código.
Porem tenho que declarar variáveis para fazer o Insert.
Isto porque não sei de onde vem os dados para gravar.
JUNIOR.STATUS 10/04/2013 17:16:54
#421760
eu to lendo um banco access e movendo os dados para essas variaveis e ai fazendo o insert

detalhe q essas variaveis:- vDim W_Estoque As Double, W_Unitario As Double, W_Total As Double
eu declarei como string tb

sera q pode ser isso

OMAR2011 10/04/2013 18:22:49
#421765
O que pode está dando erro, são os dados colocados nas variáveis.
Campo Numeric do Firebird não aceita [Ô],[Ô] virgula.
JUNIOR.STATUS 12/04/2013 10:25:01
#421840
bom dia Omar

eu substitui as variaveis de valor, por numeros inteiros mesmo assim ta apresentando mesmo erro
OMAR2011 12/04/2013 10:48:38
#421842
Resposta escolhida
Então faça isto.
Adiciona seu projeto com o banco.
Apenas seu formulário que está
dando erro.
Ai o pessoal vai dar uma resposta.
NETMANIA 12/04/2013 13:31:14
#421851
Ou passar a string quando você executa a inserção dos dados que ocorre o erro para ajudar na verificação.
Página 1 de 2 [11 registro(s)]
Tópico encerrado , respostas não são mais permitidas