
#Idatabase relational database code
Sometimes, it's useful to run code after a transaction is committed, this can be done using OnCommit to register an action that will execute after the transaction is committed. In addition, you can explicitly create and commit a transaction that performs multiple actions.

Modifying DataĪ IDatabase instance has convenience methods that create a transaction, perform a specific action, and commit the transaction as follows. Specific value types will also cause a WHERE clause to be rewritten as follows. The values parameter can also be specified in multiple ways. The sql parameter can be specified in multiple ways. MethodĮach flavor above takes a sql parameter and optional values parameter. There are four flavors of selecting data with different return values. Accessing a DatabaseĪn IDatabase instance allows modifying data, selecting data, and creating DynamicViews.
#Idatabase relational database install
Install from Nuget Nameīecause Dictionary is used so extensively, the following alias is defined. The SELECT below and receives data change events when changes to the todo and user tables would modify the results of the SELECT. See the example at to see a console program that subscribes to Is part of a DynamicView in Butterfly.Db.īutterfly.Db also provides a simple interface to retreive and modify data with support for transactions.īutterfly.Db has implementations for memory, MySQL, Postgres, SQLite, and SqlServer. Subscription API in Butterfly.Web and the Web Client in Butterfly.Client.Įxecuting a SELECT and receiving events when the results of the SELECT change Want to push these data change events to a web client? See the Only tables in the FROM clause of the SELECT will detect changes (not in subqueries)Įven with the limitations above, this is still a quite useful foundation to.All modifications must modify a single record at a time.All modifications must be executed via Butterfly.Db interface.This adds overhead, the modified SELECT statements are filtered by primary key The SELECTs when the underyling data changes in the relational database.īutterfly.Db does this by parsing the SELECT statements and runningĪ modified version of the SELECT after each INSERT, UPDATE, or DELETE.


Reactive database SELECTs for popular relational databases in C# Overviewīutterfly.Db allows executing SELECTs and receiving data change events on
