¿Se pueden crear funciones en SQLite como se puede en MSSQL?Cómo crear funciones personalizadas en SQLite
Si es así, ¿cómo? ¿Cuál es la sintaxis?
Gracias
¿Se pueden crear funciones en SQLite como se puede en MSSQL?Cómo crear funciones personalizadas en SQLite
Si es así, ¿cómo? ¿Cuál es la sintaxis?
Gracias
SQLite no tiene una función almacenada/lenguaje de procedimiento almacenado. Entonces CREATE FUNCTION
no funciona. Sin embargo, lo que puede hacer es asignar funciones de una biblioteca c a funciones SQL (funciones definidas por el usuario). Para ello, utilice la API C de SQLite (ver: http://www.sqlite.org/c3ref/create_function.html)
Si usted no está utilizando la API de C, el API de envoltura puede definir algo que le permite acceder a esta función, véase por ejemplo:
sqlite_create_function()
(http://www.php.net/manual/en/function.sqlite-create-function.php)sqlite3.create_function()
(http://docs.python.org/2/library/sqlite3.html#sqlite3.Connection.create_function)$dbh->func(_$name,_$argc,_$func_ref,_"create_function")
(https://metacpan.org/pod/DBD::SQLite#dbh-sqlite_create_function-name-argc-code_ref)Esto podría ser útil para muchos: en SQLiteStudio es posible definir nuevas funciones y colaciones fácilmente desde la interfaz a través de un complemento integrado sql, por ejemplo.
https://github.com/pawelsalawa/sqlitestudio/wiki/Official_plugins#sql-built-in
A través del editor de funciones.
@Andrew: puede que le interese saber que las UDF de SQLite son fáciles de implementar en cualquier lenguaje CLR utilizando el proveedor System.Data.SQLite para .NET. http://sqlite.phxsoftware.com/ – Tim
Si asigna una función definida por el usuario como mencionó en esta respuesta, ¿se conserva en la base de datos sqlite o tiene que asignarla cada vez que carga el db? – ThinkBonobo
Buena pregunta. Creo que deberías volver a mapear. –