SALVAR DATAS NO POSTGRESQL VIA STORED PROCEDURE | VB.NET
O título já diz.
O que estou tentando fazer é receber uma data digitada no console através de uma variável data e salva-la no banco através de uma stored procedure.
Porém retorna Function does not exist
Acredito que seja pelo formato que o postgresql utiliza "yyyy-mm-dd"
Já VB utiliza "mm/dd/yyyy"
Me ajudem, segue o código abaixo:
Sub Main()
Do While True = True
Dim valor As Date
Dim DTB As New DataTable
Console.WriteLine("Grave um valor: ")
valor = Console.ReadLine
Console.Write(valor)
salvar(valor)
Consultar(DTB)
For i = 0 To DTB.Rows.Count - 1
For j = 0 To DTB.Columns.Count - 1
Console.Write("|" + DTB.Rows(i)(j).ToString)
Next
Console.WriteLine()
Next
Loop
End Sub
Public Sub salvar(ByVal valor As Date)
strInstrucao = "salvar"
objCommand.CommandText = strInstrucao
objCommand.Connection = objConexao
objCommand.CommandType = CommandType.StoredProcedure
objCommand.Parameters.AddWithValue("@valor", valor)
objConexao.Open()
'transacao = objConexao.BeginTransaction(IsolationLevel.ReadCommitted)
objCommand.ExecuteNonQuery()
'transacao.Commit()
objConexao.Close()
End Sub
O que estou tentando fazer é receber uma data digitada no console através de uma variável data e salva-la no banco através de uma stored procedure.
Porém retorna Function does not exist
Acredito que seja pelo formato que o postgresql utiliza "yyyy-mm-dd"
Já VB utiliza "mm/dd/yyyy"
Me ajudem, segue o código abaixo:
Sub Main()
Do While True = True
Dim valor As Date
Dim DTB As New DataTable
Console.WriteLine("Grave um valor: ")
valor = Console.ReadLine
Console.Write(valor)
salvar(valor)
Consultar(DTB)
For i = 0 To DTB.Rows.Count - 1
For j = 0 To DTB.Columns.Count - 1
Console.Write("|" + DTB.Rows(i)(j).ToString)
Next
Console.WriteLine()
Next
Loop
End Sub
Public Sub salvar(ByVal valor As Date)
strInstrucao = "salvar"
objCommand.CommandText = strInstrucao
objCommand.Connection = objConexao
objCommand.CommandType = CommandType.StoredProcedure
objCommand.Parameters.AddWithValue("@valor", valor)
objConexao.Open()
'transacao = objConexao.BeginTransaction(IsolationLevel.ReadCommitted)
objCommand.ExecuteNonQuery()
'transacao.Commit()
objConexao.Close()
End Sub
Everton Rodrigues
Curtidas 0
Respostas
Fabiano Carvalho
19/05/2016
Informe onde é localizada a procedure.
Não conheço muito do PostgreeSQL, mas é necessário informa a [base][schema][nome da procedure] para que o VB saiba onde executar a stored procedure.
Não conheço muito do PostgreeSQL, mas é necessário informa a [base][schema][nome da procedure] para que o VB saiba onde executar a stored procedure.
GOSTEI 0
Everton Rodrigues
19/05/2016
A base já é informada na string de conexão. Informei o Schema porém o erro continua:
ERRO:
function public.salvar(timestamp without time zone) does not exist"}
strInstrucao = "public.salvar"
ERRO:
function public.salvar(timestamp without time zone) does not exist"}
GOSTEI 0
Everton Rodrigues
19/05/2016
Resolvido!!!!
O problema estava na tabela do banco que o type estava time whitout.
Troquei para date e tudo funcionou.
Agradeço.
O problema estava na tabela do banco que o type estava time whitout.
Troquei para date e tudo funcionou.
Agradeço.
GOSTEI 0