Pouvez-vous créer des fonctions dans SQLite comme vous le pouvez dans MSSQL?Comment créer des fonctions personnalisées dans SQLite
Si oui, comment? Quelle est la syntaxe?
Merci
Pouvez-vous créer des fonctions dans SQLite comme vous le pouvez dans MSSQL?Comment créer des fonctions personnalisées dans SQLite
Si oui, comment? Quelle est la syntaxe?
Merci
SQLite n'a pas de fonction stockée/de langue de procédure stockée. Donc CREATE FUNCTION
ne fonctionne pas. Ce que vous pouvez faire, cependant, c'est des fonctions de carte d'une bibliothèque c vers des fonctions SQL (fonctions définies par l'utilisateur). Pour ce faire, utilisez l'API SQLite C (voir: http://www.sqlite.org/c3ref/create_function.html)
Si vous n'êtes pas en utilisant l'API C, votre API wrapper peut définir quelque chose qui vous permet d'accéder à cette fonctionnalité, voir par exemple:
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)Cela pourrait être utile à beaucoup: dans SQLiteStudio il est possible de définir de nouvelles fonctions et classements facilement à partir de l'interface via un plugin intégré sql par exemple.
https://github.com/pawelsalawa/sqlitestudio/wiki/Official_plugins#sql-built-in
Grâce à l'éditeur de fonction.
@Andrew: Puisque vous mentionnez MSSQL, vous pourriez être intéressé de savoir que les UDF SQLite sont faciles à implémenter dans n'importe quel langage CLR en utilisant le fournisseur System.Data.SQLite pour .NET. http://sqlite.phxsoftware.com/ – Tim
Si vous mappez une fonction définie par l'utilisateur comme vous l'avez mentionné dans cette réponse, est-elle conservée dans la base de données sqlite ou devez-vous la mapper chaque fois que vous chargez la base de données? – ThinkBonobo
Bonne question. Je pense que vous pourriez avoir à re-cartographier. –