Mysql
 sql >> Base de données >  >> RDS >> Mysql

ServiceStack.OrmLite :Où se trouve la méthode pour écrire du SQL personnalisé et récupérer le résultat ?

Ouais j'ai récemment remarqué que db.SqlList s'est perdu dans le refactor OrmLite v4 donc je l'ai restauré dans ce commit . Qui sera disponible dans la prochaine version de la v4, avant la fin du mois.

Vous pouvez toujours utiliser db.Select pour les requêtes SELECT brutes, par exemple :

var results = db.Select<Poco>("SELECT * FROM a LIMIT 10");

C'est seulement un problème quand ce n'est pas un SELECT parce que nous supposons qu'il s'agit d'une sténographie comme :

var results = db.Select<Poco>("Foo = 'bar'");

Et ajoutez automatiquement le reste du SQL pour vous, mais c'est un problème lorsque vous n'émettez pas de SELECT déclaration, par ex. appeler une procédure stockée, qui est ce que db.SqlList est pour puisque le SQL brut reste intact.

Prise en charge de LIMIT dans l'API d'expression typée

Une autre façon d'interroger avec une limite consiste à utiliser l'API d'expression typée, par exemple :

var results = db.Select<Poco>(q => q.Limit(10));