Error al crear UDF en SQL Server 2000

17/10/2008 - 04:36 por ajsueldo | Informe spam
Quiero crear la siguiente función

create function suma ( @operador1 int, @operador2 int )
returns int
as
begin
declare @result int
set @result = @operador1 + @operador2

return @result
end

y me da el siguiente error:

Error: Línea 1: sintaxis incorrecta cerca de 'function'.
SQLState: S0001
ErrorCode: 170

No entiendo que puede estar pasando

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
17/10/2008 - 16:09 | Informe spam
Chequea el nivel de compatibilidad de la base de datps donde tratas de crear
la funcion. Posiblemente tenga un nivel menor a 80, que es el nivel de una db
creada en una instancia de SS 2000.

EXEC sp_dbcmptlevel 'nombre_de_tu_db'
GO

si es menor que 80, deberas cambiar el nivel de compatibilidad. OJO, si esa
base de datos esta siendo usada por aplicaciones externas, debes chequear
primero los cambios de comportamiento entre el nivel 80 y los niveles de
versiones anteriores.

Para cambiar el nivel de compatibilidad usar:

EXEC sp_dbcmptlevel 'nombre_de_tu_db', 80
GO

Transact-SQL Reference (SQL Server 2000)
sp_dbcmptlevel
http://msdn.microsoft.com/en-us/library/aa259649(SQL.80).aspx


AMB

"ajsueldo" wrote:

Quiero crear la siguiente función

create function suma ( @operador1 int, @operador2 int )
returns int
as
begin
declare @result int
set @result = @operador1 + @operador2

return @result
end

y me da el siguiente error:

Error: Línea 1: sintaxis incorrecta cerca de 'function'.
SQLState: S0001
ErrorCode: 170

No entiendo que puede estar pasando
Respuesta Responder a este mensaje
#2 ajsueldo
17/10/2008 - 18:02 | Informe spam
Tocayo:

Mil gracias, creo que eso es lo que debe estar pasando. Algo me sospechaba,
porque en algún TAB de propiedades vi que estaba seteado "Compatibilidad con
SQL Server 7", y me olfateé algo por ese lado.

Al correr el SP que me pasaste da:

Warning: El nivel de compatibilidad actual es 70.
SQLState: S0001
ErrorCode: 15054

Voy a tratar de cambiarlo y ver que pasa.

Gracias,

Alejandro

"Alejandro Mesa" wrote:

Chequea el nivel de compatibilidad de la base de datps donde tratas de crear
la funcion. Posiblemente tenga un nivel menor a 80, que es el nivel de una db
creada en una instancia de SS 2000.

EXEC sp_dbcmptlevel 'nombre_de_tu_db'
GO

si es menor que 80, deberas cambiar el nivel de compatibilidad. OJO, si esa
base de datos esta siendo usada por aplicaciones externas, debes chequear
primero los cambios de comportamiento entre el nivel 80 y los niveles de
versiones anteriores.

Para cambiar el nivel de compatibilidad usar:

EXEC sp_dbcmptlevel 'nombre_de_tu_db', 80
GO

Transact-SQL Reference (SQL Server 2000)
sp_dbcmptlevel
http://msdn.microsoft.com/en-us/library/aa259649(SQL.80).aspx


AMB

"ajsueldo" wrote:

> Quiero crear la siguiente función
>
> create function suma ( @operador1 int, @operador2 int )
> returns int
> as
> begin
> declare @result int
> set @result = @operador1 + @operador2
>
> return @result
> end
>
> y me da el siguiente error:
>
> Error: Línea 1: sintaxis incorrecta cerca de 'function'.
> SQLState: S0001
> ErrorCode: 170
>
> No entiendo que puede estar pasando
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida