Skip to content

icoxfog417/DataBaseExecutors

Repository files navigation

DataBaseExecutors

DataBaseExecutors is simple database access tool for .NET.
You don't need to use DataReader or DataAdapter any longer . Just write SQL.

API Documents is Here
Download from Nuget

Officialy supports Oracle and SqlServer.

Related Repositories

How to use

Select

Dim db As New DBExecution(ConnectionName)
Dim table As DataTable = db.sqlRead("SELECT * FROM tab")

Select Scalar

Dim db As New DBExecution(ConnectionName)
Dim count As Integer = db.sqlReadScalar(Of Integer)("SELECT COUNT(*) FROM tab")

Functional Recordset processing

  • Make xml of users (<users><user>Mike</user> ... </users>)
Dim db As New DBExecution(ConnectionName)
Dim xml As String = db.sqlReadToString("SELECT * FROM tab ",Address Of Me.fetch) 'apply function to each record

Private Function fetch(ByVal reader As DbDataReader, ByVal counter As Long) As String
  Return "<user>" + reader.GetStringOrDefault("NAME") + "</user>"
End Function
  • Make list of user
Dim db As New DBExecution(ConnectionName)
Dim users As List(Of User) = db.sqlRead(Of User)("SELECT * FROM tab ",Address Of Me.createUser)

Private Function createUser(ByVal reader As DbDataReader, ByVal counter As Long) As User
  Return New User(reader.GetIntegerOrDefault("ID"),reader.GetStringOrDefault("NAME"))
End Function

Select 1 row as dictionary of column name and value

Dim db As New DBExecution(ConnectionName)
Dim user As Dictionary(Of String,String) = db.sqlReadOneRow("SELECT * FROM tab WHERE ID = 1")

Execute Query(UPDATE/INSERT)

Dim db As New DBExecution(ConnectionName)
db.addFilter("pid", 10)
db.addFilter("pName", "Mike")
db.sqlExecution("UPDATE tab SET NAME = :pName WHERE ID = :pId")

Execute by DataTable

Dim db As New DBExecution(ConnectionName)
db.importTable(table) 'insert/update rows by passing DataTable
db.createTable(table) 'create table from DataTable(you can drop table before create by option).

Call database function

Dim db As New DBExecution(ConnectionName)
Dim userId As Integer = 10
Dim result As String = db.executeDBFunction(Of String)("GET_USER_NAME",userId)

Entity Query

Dim users As List(Of User) = DBEntity.Read(Of User)("SELECT * FROM tab",ConnectionName)

Dim db As New DBExecution(ConnectionName)
db.addFilter("pId", 10)
Dim u As User = DBEntity.Read(Of User)("SELECT * FROM tab WHERE UserId = @pId",db).FirstOrDefault

Entity Execution

Dim user As New User(10,"Mike")
user.Save(ConnectionName)
user.Delete(ConnectionName)

About detail , Please see wiki .

About

Simple And Functional Database Access Library for C# / VB.NET

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published