Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Realizei a conversão para datetime
Mas estou com um outro problema....
Tenho essa procedure:
USE [banco_func]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[s BANCO_FUNC verifica Funcionario_Hora]
@Funcionario as varchar(50),
@Horario as datetime
AS
SET NOCOUNT ON
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
SELECT Banco_Func_vch_Funcionario, Banco_Func_dat_Horario
FROM dbo.Banco_Func
WHERE Banco_Func_vch_Funcionario = @Funcionario AND Banco_Func_dat_Horario = @Horario
No caso ele deveria comparar o nome do funcionario e horario se a pessoa tentar gravar o mesmo nome e o mesmo horario ao mesmo tempo deveria retornar um erro dizendo que já consta no banco...
Meu código esta assim:
a clsCadFuncionarioDAO:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
usind BancodeDados;
public class clsCadFuncionarioDAO
{
#region " Constantes de acesso ao banco de dados "
private const string spCADASTRA_FUNCIONARIO= "[A FUNCIONARIO cadastra Funcionarios]";
private const string spPARAMETROS_ENTRADA_CADASTRA_FUNCIONARIO = "@Funcionario_lng_Codigo:@Funcionario_vch_Nome:@Funcionario_vch_Sobrenome:@Funcionario_vch_Local:@Funcionario_vch_Cidade:@Funcionario_vch_Area:@Funcionario_dat_Data_Nascimento:@Funcionario_dat_Horario:";
private const string spPARAMETROS_SAIDA_CADASTRA_FUNCIONARIO = "@Funcionario_lng_Codigo:";
#endregion
#region " Variaveis de acesso ao banco de dados "
private DBFunctions m_oDB;
private DataSet m_oDS;
private string m_sStoredProc;
private string m_sNomeParIn;
private string m_sParIn;
private string m_sNomeParOut;
private string m_sParOut;
private string m_sSQL;
#endregion
public bool CADASTRA_FUNCIONARIO(String Nome, String Sobrenome, String Local, String Cidade, String Area, String Data, String Horario)
{
try
{
m_sStoredProc = spCADASTRA_FUNCIONARIO;
m_sNomeParIn = spPARAMETROS_ENTRADA_CADASTRA_FUNCIONARIO;
m_sParIn = m_oDB.PreparaParametro(m_sNomeParIn);
m_sNomeParOut = spPARAMETROS_SAIDA_CADASTRA_FUNCIONARIO;
m_sParOut = "NULL";
m_sParIn = m_sParIn.Replace("@Funcionario_lng_Codigo:", "");
m_sParIn = m_sParIn.Replace("@Funcionario_vch_Nome:", Nome);
m_sParIn = m_sParIn.Replace("@Funcionario_vch_Sobrenome:", Sobrenome);
m_sParIn = m_sParIn.Replace("@Funcionario_vch_Local:", Local);
m_sParIn = m_sParIn.Replace("@Funcionario_vch_Cidade:", Cidade);
m_sParIn = m_sParIn.Replace("@Funcionario_vch_Area:", Area);
m_sParIn = m_sParIn.Replace("@Funcionario_dat_Data:", Data);
m_sParIn = m_sParIn.Replace("@Funcionario_dat_Horario:", Horario);
return m_oDB.ExecutarAcao(ref m_sStoredProc, ref m_sNomeParIn, ref m_sParIn, ref m_sNomeParOut, ref m_sParOut);
int p_sCadastro_lng_Codigo = int.Parse(m_oDB.ConteudoParametroSaida(ref m_sParOut));
}
catch (Exception ex)
{
throw new ApplicationException(ex.Message, ex.InnerException);
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
using System.Data.SqlClient;
using BancodeDados;
using System.Configuration;
public class clsCadFuncionario
{
private clsCadFuncionarioDAO c_CadFuncionarioDAO;
private DBFunctions m_oDataBase;
private String Funcioanrio;
private String Horario;
public bool CadastrarFuncionario(String Nome, String Sobrenome, String Local, String Cidade, String Area, String Data, String Horario)
{
// Busca no banco de dados o Funcionario/Horario se houve retorno de algum valor da busca no banco de dados
DataSet m_oDataSet = m_oCadFuncionarioDAO.VER_FUNCIONARIO(p_sCelebrante, p_sHorario);
try
{
Funcionario = m_oDataSet.Tables[0].Rows[0]["Banco_Func_vch_Funcionario"].ToString();
Horario = m_oDataSet.Tables[0].Rows[0]["Banco_Func_dat_Horario"].ToString();
return false;
}
catch (IndexOutOfRangeException)
{
c_CadFuncionarioDAO.CADASTRA_FUNCIONARIO(Nome, Sobrenome, Local, Cidade, Area, Data, Horario);
return true;
}
}
}
No caso ele não retorna nenhum erro, mas realiza o cadastro normalmente.....isso não deveria acontecer qnd entrar c mesmo nome e mesma hora.
No caso ao cadastrar a hora...esta cadastrando com essa estrutura: aaaa/mm/dd HH:mm:ss ....isso pode estar influenciando na verificação?
Carregando comentários...