Visual Basic.NET - Error en el select

   
Vista:
Imágen de perfil de Ignacio

Error en el select

Publicado por Ignacio (27 intervenciones) el 16/01/2018 00:48:21
Tengo una aplicacion que manejaba datos en tablas acces, migre para Sql server 2008 R2 y empece a hacer los cambios pertinentes, pero en el siguiente select me salta un error..

1
2
3
4
5
6
7
8
9
10
11
12
13
14
Dim S As String = "SELECT sum(ImpMN) as totalMN FROM factura where Year(cdate(fecha)) = " & a & " And  Month(cdate(fecha)) = " & m & " and cancelada=0"
 
    cargar_suma(S, "factura")
 
Public Sub cargar_suma(ByVal StrComando As String, ByVal tabla As String)
    conexiones.open()
    adapter = New SqlDataAdapter(StrComando, conexion)
    Sumads.Reset()
    adapter.Fill(Sumads, tabla)
AQUI ME SALTA EL ERROR.  'cdate' is not a recognized built-in function name.
 
    conexion.Close()
End Sub

El campo fecha es de tipo Char en la tabla sql, pudiera pasarlo a date, pero es de mi interes en manejarlo como char o text , no se porque en acces funcionaba bien y ahora en sql me salta el error. Gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Error en el select

Publicado por Nicolas (7 intervenciones) el 16/01/2018 02:28:48
Hola Ignacio.
Revisa que formato necesita SQL Server y cual está trabajando la aplicación.
Por ejemplo en una tabla de cotizaciones puede ingresar un registro de la siguiente forma con una BBDD MySQL
Dim Cadena As String
Cadena = "INSERT INTO cotizaciones (Fecha ,Moneda ,TC ,TCCompra ,TCPizarra) VALUES('" & Format(pCotiza.Fecha, "yyyy/MM/dd") & "','" & pCotiza.Moneda & "','" & pCotiza.TC & "','" & pCotiza.TCCompra & "','" & pCotiza.TCPizarra & "')"


Espero te sea de ayuda.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Ignacio

Error en el select

Publicado por Ignacio (27 intervenciones) el 16/01/2018 15:27:10
el formato es dd/mm/yyyy en el campo fecha que es de tipo char, pero probe hacer cosulta directo en el sql con el mismo select que me da el error y me sigue dando el error, el problema es que Cdate SQL no existe, probe pasar el campo fecha que esta en char a date, pero en la tabla me lo pone en formato yyyy/mm/dd, mi pregunta es.. como le doy formato al campo fecha que ya esta en date de la forma dd/mm/yyyyy? en las propiedades no lo encuentro.. o tendre que hacerlo ya mediante codigo en el programa?..Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Leonardo Daniel A.

Error en el select

Publicado por Leonardo Daniel A. (25 intervenciones) el 16/01/2018 07:25:18
Hola porque SQL Server tiene sus propias funciones para hacer sus cosas, entre ellas no existe un CDATE

que por cierto no se porque lo usas, que el campo fecha en tu BD no es tipo fecha ??

seria WHERE year(fecha)


pero si la tienes como string primero la conviertes, con convert o con cast


year(Cast(fecha as datetime))


te recomiendo busques cursos de sql server, hay muchos en youtube
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Revisar política de publicidad