sql >> Database teknologi >  >> RDS >> Mysql

ServiceStack.OrmLite:Hvor er metoden til at skrive brugerdefineret SQL og få resultatet sat tilbage?

Ja, jeg har for nylig bemærket, at db.SqlList faret vild i OrmLite v4-refaktoren så jeg har gendannet den tilbage i denne commit . Som vil være tilgængelig i den næste udgivelse af v4, inden udgangen af ​​måneden.

Du kan stadig bruge db.Select for rå SELECT-forespørgsler, f.eks.:

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

Det er kun et problem, når det ikke er en SELECT udsagn, fordi vi ville antage, at den er kortfattet som:

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

Og tilføj automatisk resten af ​​SQL'en for dig, men dette er et problem, når du ikke udsteder en SELECT erklæring, f.eks. kalder en lagret procedure, hvilket er hvad db.SqlList er for, da den rå SQL forbliver uberørt.

Understøttelse af LIMIT i Typed Expression API

En anden måde at forespørge med en grænse på er at bruge det indtastede udtryk API, f.eks.:

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



  1. MySQL - Et til en forhold?

  2. mySQL - Opret en ny tabel ved hjælp af data og kolonner fra tre tabeller

  3. Skal jeg angive både INDEX og UNIQUE INDEX?

  4. Doktrin - Hvordan udskriver man den rigtige sql, ikke kun den forberedte erklæring?