Click here to Skip to main content
12,507,089 members (63,608 online)
Click here to Skip to main content
Add your own
alternative version

Stats

108.3K views
803 downloads
35 bookmarked
Posted

HyperNetDatabase

, 21 Mar 2004
Rate this:
Please Sign up or sign in to vote.
HyperNetDatabase is a single process multithreading and blackout safe database

Sample Image - maximum width is 600 pixels

Sample Image - maximum width is 600 pixels

Introduction

This project was developed in order to help users that use databases like commercial ACCESS for small projects and then are subject to commercial laws. This is a simple solution for a database engine that can supply a good power to normal database tasks. This driver is free (GPL).

Using the code

Link the two DLLs HyperNetDatabase.DLL and NetFrmExts.DLL to your project and you'll be linked. Note use R2 Only, R1 is older and unstable.

To open a database and make a select:

using HyperNetDatabase.R2;
...
Database db = new Database();
db.Open("file.hnd"); // creates or opens database
...
..
DataTable result = db.Select(
    new string[]{"SEQNAME"}, // fields as an array of strings
    "$Sequences", // Name of the table
    new object[,]{ {"SEQNAME","=",myseq} } 
  // pairs of filter conditions : ... WHERE SEQNAME=myseq AND ...
    );
..
db.Close();

 

Public Static Methods


DataRow2NameAndValueConverts a DataRow in a NameAndValue object with skipRows.

Public Instance Constructors


Database ConstructorDefault constructor

Public Instance Properties


FilenameFilename of the database
LockGlobal lock, used to lock other thread to make concurrent queries. Example: Read and then insert.
StateConnection state

Public Instance Methods

AddFieldAdds a field
AddFieldIfNotExistAdds a field if it not exists
AddTableAdds a table
AddTableIfNotExistAdds a table if it not exists
CloseCloses a database
DeleteSQL DELETE query
DropTableRemoves a table
DropTableIfExistsDrops a table if the table exists
DumpDumps pages state
ExistsTableReturns true if the table exists
FlushIndexesDestroys in memory indexes. Do this if your were walking for many tables and you memory resources are low.
ForcedInsertOverloaded. More known as Update or Insert (Sets values by a keyfield) Inserts if the condition does not match or updates if the condition matches.
ForcedSelectObtains a value and if it not exists obtains it's default value
GetTableNamesGets all tables in this database
GetUserFieldsFields for users
InsertInserts data into a Table
LogToFile (inherited from LogSupport)Saves a string in the log file
OpenOpen
PreloadIndexesPreloads indexes for table to make reads faster
SelectSQL Select query. WHERE expression: Is an C# expresion for making a where as a filter.
  • new object[,]{ {"{FIELDNAME}", {operand},{parameter}},... } Is the same as "field operand parameter AND ..."
  • null Means the same as no where condition.

OperandEffect
=Equality
>Value of left field name is greater than right constant value variable
>=Value of left field name is greater or equal than right constant value variable
<Value of left field name is less than right constant value variable
<=Value of left field name is less or equal than right constant value variable
!=Value of left field name is different than right constant value variable

seqCreateOverloaded. Creates a sequence.
seqCurrentValueCurrent sequence value
seqDropSequence drop
seqExistsSequence exists?
seqNextValueNext sequence value (and autoincrement)
UpdateSQL UPDATE query



Points of Interest

  • Support all SQL basic functions.
  • Additional features.
  • Protect from Blackouts
  • Multithreading-safe

History

RELEASE VERSION 2.0.0 NOTES - 2004-03-17

Features:

  • First stable version
  • Support all SQL basic functions.
  • Additional features.
  • Protect from Blackouts
  • Multithreading-safe

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here

Share

About the Author

M L Viñas Livschitz
Web Developer
Spain Spain
No Biography provided

You may also be interested in...

Pro
Pro

Comments and Discussions

 
GeneralseqCreate Pin
Robse17-Apr-06 4:48
memberRobse17-Apr-06 4:48 
GeneralGood work but too much memory used Pin
adamsdigiark28-Aug-04 15:44
memberadamsdigiark28-Aug-04 15:44 
GeneralRe: Good work but too much memory used Pin
M L Viñas Livschitz30-Aug-04 22:51
memberM L Viñas Livschitz30-Aug-04 22:51 
GeneralStrings &gt; 50KByte Pin
Kampf-Keks15-Aug-04 14:14
sussKampf-Keks15-Aug-04 14:14 
GeneralRe: Strings &gt; 50KByte Pin
M L Viñas Livschitz30-Aug-04 22:51
memberM L Viñas Livschitz30-Aug-04 22:51 
GeneralConsult SharpHSQL Pin
ylong18-Apr-04 6:13
memberylong18-Apr-04 6:13 
GeneralRe: Consult SharpHSQL Pin
M L Viñas Livschitz18-Apr-04 6:22
memberM L Viñas Livschitz18-Apr-04 6:22 
GeneralProtect from Blackouts Pin
Rick Crone30-Mar-04 9:04
memberRick Crone30-Mar-04 9:04 
GeneralRe: Protect from Blackouts Pin
M L Viñas Livschitz30-Mar-04 22:49
memberM L Viñas Livschitz30-Mar-04 22:49 
GeneralRe: Protect from Blackouts Pin
Rick Crone31-Mar-04 3:13
memberRick Crone31-Mar-04 3:13 
GeneralRe: Protect from Blackouts Pin
M L Viñas Livschitz31-Mar-04 5:54
memberM L Viñas Livschitz31-Mar-04 5:54 
GeneralNo test database in source.. Pin
Stewart.Rogers30-Mar-04 2:51
memberStewart.Rogers30-Mar-04 2:51 
GeneralRe: No test database in source.. Pin
M L Viñas Livschitz30-Mar-04 3:03
memberM L Viñas Livschitz30-Mar-04 3:03 
GeneralDatabase Pin
Alex_124-Mar-04 17:36
memberAlex_124-Mar-04 17:36 
GeneralRe: Database Pin
M L Viñas Livschitz25-Mar-04 6:22
memberM L Viñas Livschitz25-Mar-04 6:22 
QuestionID fields? Pin
csmba24-Mar-04 7:36
membercsmba24-Mar-04 7:36 
AnswerRe: ID fields? Pin
M L Viñas Livschitz24-Mar-04 8:46
memberM L Viñas Livschitz24-Mar-04 8:46 
GeneralRe: ID fields? Pin
csmba24-Mar-04 8:51
membercsmba24-Mar-04 8:51 
GeneralRe: ID fields? Pin
M L Viñas Livschitz25-Mar-04 6:20
memberM L Viñas Livschitz25-Mar-04 6:20 
QuestionParser? Pin
Jeff Varszegi18-Mar-04 18:11
memberJeff Varszegi18-Mar-04 18:11 
AnswerRe: Parser? Pin
ultralight3219-Mar-04 3:32
memberultralight3219-Mar-04 3:32 
GeneralRe: Parser? Pin
Stewart.Rogers30-Mar-04 2:40
memberStewart.Rogers30-Mar-04 2:40 
GeneralRe: Parser? Pin
M L Viñas Livschitz30-Mar-04 3:13
memberM L Viñas Livschitz30-Mar-04 3:13 
GeneralNo source Pin
xanth18-Mar-04 13:35
memberxanth18-Mar-04 13:35 
GeneralRe: No source Pin
ultralight3219-Mar-04 3:33
memberultralight3219-Mar-04 3:33 
GeneralMSDE is it Pin
Anonymous17-Mar-04 22:01
sussAnonymous17-Mar-04 22:01 
GeneralRe: MSDE is it Pin
Don Miguel17-Mar-04 22:34
memberDon Miguel17-Mar-04 22:34 
GeneralRe: MSDE is it Pin
Norm Almond17-Mar-04 23:23
memberNorm Almond17-Mar-04 23:23 
GeneralRe: MSDE is it Pin
Don Miguel18-Mar-04 1:57
memberDon Miguel18-Mar-04 1:57 
GeneralRe: MSDE is it Pin
martininick18-Mar-04 3:16
membermartininick18-Mar-04 3:16 
GeneralRe: MSDE is it Pin
Brandon Haase25-Mar-04 6:01
memberBrandon Haase25-Mar-04 6:01 
GeneralRe: MSDE is it Pin
ultralight3219-Mar-04 3:34
memberultralight3219-Mar-04 3:34 
GeneralRe: MSDE is it Pin
Anonymous19-Mar-04 13:58
sussAnonymous19-Mar-04 13:58 
GeneralRe: MSDE is it Pin
ultralight3220-Mar-04 22:21
memberultralight3220-Mar-04 22:21 
GeneralRe: MSDE is it Pin
Don Miguel28-Jul-05 7:49
memberDon Miguel28-Jul-05 7:49 
GeneralRe: MSDE is it Pin
datasoft19-Mar-04 14:17
memberdatasoft19-Mar-04 14:17 
GeneralRe: MSDE is it Pin
Russel Harvey23-Mar-04 14:32
memberRussel Harvey23-Mar-04 14:32 
GeneralRe: MSDE is it Pin
KenPinard23-Mar-04 17:08
memberKenPinard23-Mar-04 17:08 
GeneralRe: MSDE is it Pin
Russel Harvey23-Mar-04 19:02
memberRussel Harvey23-Mar-04 19:02 
GeneralRe: MSDE is it Pin
KenPinard24-Mar-04 5:57
memberKenPinard24-Mar-04 5:57 
Generaltry SQLite for an embedded DB. Pin
Johnno7428-Mar-04 15:24
memberJohnno7428-Mar-04 15:24 
GeneralRe: MSDE is it Pin
ultralight3220-Mar-04 22:22
memberultralight3220-Mar-04 22:22 
GeneralADO.NET Support Pin
Reginald J Henderson25-Mar-04 13:22
memberReginald J Henderson25-Mar-04 13:22 
GeneralRe: ADO.NET Support Pin
M L Viñas Livschitz25-Mar-04 13:32
memberM L Viñas Livschitz25-Mar-04 13:32 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web01 | 2.8.160927.1 | Last Updated 22 Mar 2004
Article Copyright 2004 by M L Viñas Livschitz
Everything else Copyright © CodeProject, 1999-2016
Layout: fixed | fluid