473,499 Members | 1,893 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

ODB's and C#

Are there any ODBMS's that work well with C#?

eg storing Uri as a database type (CustUri Type(Uri)) and then queries
such as select CustUri.AbsolutePath should be used).

I would find this useful. I know Oracle software has some object
functions, but it would be nice if something exists to handle C#
objects naturally.
Aug 25 '08 #1
8 4463
www.db4o.com - I ruled it out due to the runtime license costs and went for
an object->rdbms mapper (and more) at www.capableobjects.com instead.

Pete

Aug 25 '08 #2
On Aug 25, 5:17 pm, "Peter Morris" <mrpmorri...@SPAMgmail.comwrote:
www.db4o.com- I ruled it out due to the runtime license costs and went for
an object->rdbms mapper (and more) atwww.capableobjects.cominstead.

Pete
I'll try this.
Aug 25 '08 #3
Logician wrote:
Are there any ODBMS's that work well with C#?

eg storing Uri as a database type (CustUri Type(Uri)) and then queries
such as select CustUri.AbsolutePath should be used).

I would find this useful. I know Oracle software has some object
functions, but it would be nice if something exists to handle C#
objects naturally.
You would need a OODBMS for that. db4o is apparently good (I've not used
it though).

Otherwise, you're going to hit the object relational impedance mismatch.

An ORM (such as NHibernate) is the other option...

Alun Harford
Aug 25 '08 #4
On Aug 25, 7:17 pm, Alun Harford <devn...@alunharford.co.ukwrote:
Logician wrote:
Are there any ODBMS's that work well with C#?
eg storing Uri as a database type (CustUri Type(Uri)) and then queries
such as select CustUri.AbsolutePath should be used).
I would find this useful. I know Oracle software has some object
functions, but it would be nice if something exists to handle C#
objects naturally.

You would need a OODBMS for that. db4o is apparently good (I've not used
it though).

Otherwise, you're going to hit the object relational impedance mismatch.

An ORM (such as NHibernate) is the other option...

Alun Harford
I am thinking of using Java for the OO work since there is a lot of
support for Java OO and OODBMS, eg with ORACLE. It is just a let down
that the IDE's for Java are so bad. I think the online interaction for
C# is good and also the IDE which are all pros for c#.

I really want a fully OO type of database so that I store a type of
data by meaning, eg a type Price which has attributes bargain, low,
high, budget etc. This will lead into semantics which I want as one
aspect but also easier processing of complex objects. Relational
models are really old now, and I think the web of data (Web 3) will
really strain relational models. I know LINQ is touted by MSFT as the
next best thing, but I am not convinced so far.

Aug 25 '08 #5
On Aug 25, 11:06*pm, Logician <sa...@logicians.comwrote:
I really want a fully OO type of database so that I store a type of
data by meaning, eg a type Price which has attributes bargain, low,
high, budget etc. This will lead into semantics which I want as one
aspect but also easier processing of complex objects. Relational
models are really old now, and I think the web of data (Web 3) will
really strain relational models. I know LINQ is touted by MSFT as the
next best thing, but I am not convinced so far.
LINQ is absolutely orthogonal to the whole relational / object
dichotomy - if anything, the fact that you can do LINQ queries against
in-memory collections of plain .NET objects should be proof enough.
db4o supports LINQ queries, by the way; see
http://www.codeproject.com/KB/databa..._for_db4o.aspx for an
example.

If you rather mean ADO.NET Entity Framework (aka LINQ to Entities),
then it is, indeed, just another ORM, and not particularly powerful
one at that.
Aug 26 '08 #6
On Aug 26, 3:17*pm, Pavel Minaev <int...@gmail.comwrote:
On Aug 25, 11:06*pm, Logician <sa...@logicians.comwrote:
I really want a fully OO type of database so that I store a type of
data by meaning, eg a type Price which has attributes bargain, low,
high, budget etc. This will lead into semantics which I want as one
aspect but also easier processing of complex objects. Relational
models are really old now, and I think the web of data (Web 3) will
really strain relational models. I know LINQ is touted by MSFT as the
next best thing, but I am not convinced so far.

LINQ is absolutely orthogonal to the whole relational / object
dichotomy - if anything, the fact that you can do LINQ queries against
in-memory collections of plain .NET objects should be proof enough.
db4o supports LINQ queries, by the way; seehttp://www.codeproject.com/KB/database/LINQ_for_db4o.aspxfor an
example.

If you rather mean ADO.NET Entity Framework (aka LINQ to Entities),
then it is, indeed, just another ORM, and not particularly powerful
one at that.
I am using db4o (or trying to) and it apparently stores whole objects
without any further defintion, eg

IObjectContainer db = Db4oFactory.OpenFile( ...)

db.Store(myObject)

Which is what I want.

I am still wondering why 90% of all dbms access is relational, when
that technology is very old (at least 30 years old). Is this just the
commercial influence of Oracle, Microsoft and others who have
financial interests in keeping systems working in rdbms technologies?
Sep 6 '08 #7
"Logician" <sa***@logicians.comwrote in message
news:f7**********************************@59g2000h sb.googlegroups.com...
I am using db4o (or trying to) and it apparently stores whole objects
without any further defintion, eg

IObjectContainer db = Db4oFactory.OpenFile( ...)

db.Store(myObject)

Which is what I want.
It's all well and good, but db4o is positioned as a solution for embedded
and other low-footprint projects. What are its scalability properties? What
about concurrent access - how many active connections to the database can it
sustain? What happens if I start hitting it with 100 queries/second? 1000?
I am still wondering why 90% of all dbms access is relational, when
that technology is very old (at least 30 years old). Is this just the
commercial influence of Oracle, Microsoft and others who have
financial interests in keeping systems working in rdbms technologies?
To my knowledge, there are still no fully OODBMS solutions that match the
raw performance and scalability of RDBMS solutions. The reason is simple -
relational model is very well understood, and existing products have built
upon the old, mature, proven solutions (if you ask the vendors, you'll find
out that the core of their query analyzers is often still based around the
code of a few original RDBMS pioneers of 1970s).
Sep 6 '08 #8
On Sep 6, 2:02 pm, "Pavel Minaev" <int...@gmail.comwrote:
"Logician" <sa...@logicians.comwrote in message

news:f7**********************************@59g2000h sb.googlegroups.com...
I am using db4o (or trying to) and it apparently stores whole objects
without any further defintion, eg
IObjectContainer db = Db4oFactory.OpenFile( ...)
db.Store(myObject)
Which is what I want.

It's all well and good, but db4o is positioned as a solution for embedded
and other low-footprint projects. What are its scalability properties? What
about concurrent access - how many active connections to the database can it
sustain? What happens if I start hitting it with 100 queries/second? 1000?
I do not know. I am still trying to get it work with one query.
>
I am still wondering why 90% of all dbms access is relational, when
that technology is very old (at least 30 years old). Is this just the
commercial influence of Oracle, Microsoft and others who have
financial interests in keeping systems working in rdbms technologies?

To my knowledge, there are still no fully OODBMS solutions that match the
raw performance and scalability of RDBMS solutions. The reason is simple -
relational model is very well understood, and existing products have built
upon the old, mature, proven solutions (if you ask the vendors, you'll find
out that the core of their query analyzers is often still based around the
code of a few original RDBMS pioneers of 1970s).
You make a good point.

However with RDF about to be mainstream, we need Object databases.

Sep 6 '08 #9

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
1621
by: Sjaakie | last post by:
Hi, I have this little problem I just can't figure out... Code snippet: <? include('../_include/database.inc.php'); // db-class include('functions.inc.php'); // has genContactList() $oDb...
0
937
by: joseph | last post by:
If I have the following data file c:\mydata\Toyota Quarterly Q3-2003-customers.xls c:\mydata\Toyota Quarterly Q3-2003-All.xls c:\mydata\Toyota Quarterly Q3-2003-Errors.xls c:\mydata\Ford...
5
2054
by: Wayne Wengert | last post by:
I am getting an error that "object no longer valid" at the point indicated in the code below - I am trying to build a table in an Access 2000 database using ADOX. Any thoughts on what might cause...
10
1880
by: amirmira | last post by:
I have a Windows Service developed in VB.NET that attempts to connect to a database as soon as the service starts. I have no problem when I start the service manually - but when I restart the...
10
1187
by: Pedro | last post by:
Hi all, Why this does'nt work: switch(strExtenscao) { case ((".odo") || (".odo").ToUpper()): //CODE case ((".odb") || (".odb").ToUpper()): //CODE
2
2483
by: CJM | last post by:
I'm using OO4O via ASP to manipulate an Oracle 10g database (v10.1.0.4). At the start of each vbScript section I'm starting off the transaction as follows: oDB.AutoCommit = False...
1
4311
by: Muhammad Intikhab Qaiser | last post by:
Hi i want to connect to oracle 9i from .Net using oracle ODP.NET.But when i download and install ODP.NET it stops all my oracle services.Now i even cannot logon to the oracle SQL*Plus engine. ...
1
1275
by: bouanane26 | last post by:
hi I want to have a value for my table in access database which name Biomed I use this code Public Sub test9() Dim orst As DAO.Recordset Dim odb As DAO.Database
8
2447
by: Alan Bak | last post by:
Hi I have written a number of perl scripts that access data in an Windows built Access data base. I now need to run the perl scripts from an Apple. When I run get the error that ODB/ODBC.pm was not...
0
7131
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
7007
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
7174
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
7388
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
1
4919
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...
0
3091
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
0
1427
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated ...
1
665
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
0
297
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.