473,732 Members | 1,987 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

What kind of database is access?

Could someone tell me where MS-Access (current and 97?) fit(s) on the
RDBMS - ORDBMS - ODBMS spectrum?
I gather it's relational, but how does it size up against/follow SQL2/3/4
definitions and how does it compare to other database vendors?
Any articles that might be of interest? It's for an essay on database
models...

Thanks in advance,
Alex

--
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
Nov 13 '05 #1
29 5895
A.P. Hofstede wrote:
Could someone tell me where MS-Access (current and 97?) fit(s) on the
RDBMS - ORDBMS - ODBMS spectrum?
I gather it's relational, but how does it size up against/follow
SQL2/3/4 definitions and how does it compare to other database vendors?
Any articles that might be of interest? It's for an essay on database
models...

Thanks in advance,
Alex

Do some googling on "Jet database engine" and you may find your answers.

Bob
Nov 13 '05 #2
A.P. Hofstede wrote:
Could someone tell me where MS-Access (current and 97?) fit(s) on the
RDBMS - ORDBMS - ODBMS spectrum?
I gather it's relational, but how does it size up against/follow
SQL2/3/4 definitions and how does it compare to other database vendors?
Any articles that might be of interest? It's for an essay on database
models...


Not this ol' chestnut.

I'll forgo the Access isn't a database but Jet is malarkey as this is
after all comp.databases. ms-access and not comp.databases. jet so:
Set semantics_mode off

If by RDBMS you mean a relational database management system that
conforms to all 12 rules laid down by Edgar Codd, there isn't one. Only
close approximations.

Like many database vendors, you can create a relational database in it
but it doesn't force you to. Some of the biggies like Oracle, DB/2, SQL
Server, etc are considered by many to be RDBMSs but it is possible to
create databases in them that are totally unrelational and break nearly
every rule in the book. Much of the resulting database lies sqaurely on
the shoulders of the DBA.

Access (or Jet) differs from most databases labelled as RDBMSs by being
a desktop product or file server based product so that the workstation
does the selection/sorting instead of those tasks being performed on a
server. With standard SQL methods of retrieval this can be quite slow
depending on bandwidth/amount of data.

It also has a not undocumented but seldom exploited mode of access
called ISAM, this can make a bigger more expensive database look like a
slouch, it's as far removed from SQL as a pork pie is from a vegan's
diet but if you have a shed load of data (<2GB obviously) and want
little bits of it faster than a speeding bullet then that may be for you.

--
[OO=00=OO]
Nov 13 '05 #3
MLH
Trevor's comments are dead on the money.
Well worth the reading.
Nov 13 '05 #4
"It also has a not undocumented but seldom exploited mode of access
called ISAM"

What is this 'mode of access', and how/when is it utilized by amateur
developers like myself? Thanks!

Jim

Nov 13 '05 #5
Jim M wrote:
"It also has a not undocumented but seldom exploited mode of access
called ISAM"

What is this 'mode of access', and how/when is it utilized by amateur
developers like myself? Thanks!


ISAM = Indexed Sequential Access Method
It's part of DAO.
You can use it only on local tables or tables from a back end database
if you've opened that database in code (i.e can't use on linked tables),
e.g.

Set db = dbengine(0).ope ndatabase("f:\m ybackend.mdb")

Then you open a table directly, specify an index to search on and use
that to find records, e.g.

set rst = db.openrecordse t("MyTable", dbOpenTable)
with rst
.index = "MyIndexNam e"
.Seek "=", MyValue
if .Nomatch then
msgbox "eeek"
else
msgbox "Yip"
end if
.close
end with
set rst = nothing

If you have many records to visit with the same value, e.g.

select * from MyTable where field1='somethi ng'

you can loop these as after the first .Seek the recordset is sorted in
that index order so you can use a combination of .seek then .MoveNext
and check for a value change to get to the end of that block matching
the criteria as there is no .Seeknext method.

The above code would not be portable so if you ever conceive of
upgrading to a SQL Server back end then you could be in for a major
re-write.

--
[OO=00=OO]
Nov 13 '05 #6
Trevor Best <no****@besty.o rg.uk> wrote in
news:42******** *************** @news.zen.co.uk :
ISAM = Indexed Sequential Access Method
It's part of DAO.
You can use it only on local tables or tables from a back end
database if you've opened that database in code (i.e can't use on
linked tables),


Er, why, then, is the term ISAM used in the drivers that support
linking to a number of non-Jet data formats, many of which have no
indexing support?

In other words, I think you're misidentifying what ISAM actually
*is*.

--
David W. Fenton http://www.bway.net/~dfenton
dfenton at bway dot net http://www.bway.net/~dfassoc
Nov 13 '05 #7
David W. Fenton wrote:
Trevor Best <no****@besty.o rg.uk> wrote in
news:42******** *************** @news.zen.co.uk :

ISAM = Indexed Sequential Access Method
It's part of DAO.
You can use it only on local tables or tables from a back end
database if you've opened that database in code (i.e can't use on
linked tables),

Er, why, then, is the term ISAM used in the drivers that support
linking to a number of non-Jet data formats, many of which have no
indexing support?

In other words, I think you're misidentifying what ISAM actually
*is*.


True, they are called ISAM but you can only use the .Index and .Seek
methods on native jet tables AFAIK.

--
[OO=00=OO]
Nov 13 '05 #8
Trevor,
Very interesting what you have to say about ISAM files. I
tired to run your code to do benchmarks and it worked. But how do you
traverse a table with parameters? Your function does not seem to allow
Queries...only Tables.
Could you give us a code snippet where you traverse a table
with a particular criteria like ( [Employee ID] = 126 )?
Thanks for the help
Hank Reed

Nov 13 '05 #9
Thanks for the pointer.

On Tue, 31 May 2005 20:25:17 +0200, Bob Alston
<tu************ ****@cox.net> wrote:
A.P. Hofstede wrote:
Could someone tell me where MS-Access (current and 97?) fit(s) on the
RDBMS - ORDBMS - ODBMS spectrum?
I gather it's relational, but how does it size up against/follow
SQL2/3/4 definitions and how does it compare to other database vendors?
Any articles that might be of interest? It's for an essay on database
models...
Thanks in advance,
Alex

Do some googling on "Jet database engine" and you may find your answers.

Bob


--
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
Nov 13 '05 #10

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

Similar topics

1
1903
by: Limey | last post by:
Hi All, I want to write an application that will talk to a RDBMS. The application needs to be platform neutral from both an operating system and database backend point of view. I have decided to create a prototype in Python, the RDBMS will be PostgreSQL running on a Linux box.
49
3198
by: Relaxin | last post by:
It is just me or has MS created some of the worst ways to access and display data? You can use a DataSet, but if you want to sort or filter the data to must use a DataView which is created from a DataSet. But, if you sort by using the Grid (clicking the header) you can no longer use the DataSet (or maybe the DataView, if that is what you are using) to locate the record that the user has selected!!
4
1957
by: Shawn H. Mesiatowsky | last post by:
I have a strange problem here. I have my development computer with IIS installed, and we have a SQL server as well on a windows 2000 server. both are members of a domain. I have restricted access to my web app using NTFS ACL's and have disabled anonymous logon and enabled windows authentication. So when a user logons on to a computer and they use there web browser, they are not prompted to logon to the intranet web app I am building. All...
4
1833
by: Val P | last post by:
How does everyone design the database access layer in an asp.net application? Two options that come to mind is: 1. create a database class and instanciate it as needed, local to a function or 2. Provide database access in a base class from which all objects that need db access will inherit from. #1 seems wasteful for application that do frequent but light db access. Option #2 seems even more wasteful, because it adds overhead to the
2
1766
by: williamphenryjr | last post by:
This is a long post. If you have answers I'm ready. If you have web links, that'd be great too. I'm a Junior/Senior in Computer Science at Washington State University, so you can make some assumptions about terminology I'll be familiar with based on that. I am trying to write a class that will abstract out database access stuff for my application. This class will be called DBUtil I will use this class to do the gruntwork for a custom...
5
5461
by: Macca | last post by:
Hi, I have a multithreaded app which now needs database storage. I am in the process of designing my Data Access Layer but and was wondering what issues I should look for for in regards to a multi threaded app. My app will be need to initiate access to the database from several places in the Business logic. I'd appreaciate any advice/suggesstions on best practices to avoid problems such as accessing the same method in the data
1
2925
by: arvind | last post by:
hi all, i am accessing sql+ database through python 2.4.3. i am using Tkinter to build my screens. how can i pass parameters on the click event of button from one function to the another? how can i run another file from current file?
7
4826
by: =?Utf-8?B?Um9nZWxpbw==?= | last post by:
hey, I have 2 threads, th and th2, both of them run a method. each of these 2 methods requires database access. sometimes I get an error, that database requires an open connection, and that the current connection state is "connecting". is this because both threads are trying to use the same database??? they use the same public static data access class. would this be why? isnt
1
1598
by: laziers | last post by:
Hi, What kind of data access you will use for the project with very large database : 1. NHibernate 2. Linq 3. Sql queries + stored procedures 4. DataSets
1
1509
by: tvnaidu | last post by:
I have digital video camera connected to PC, how I will know what kind of packets it is?. I can see live using http access to camera. I installed wireshark, I can see TCP and HTTP packets when I can se LIVE using HTTP. How I will know what kind of packets those video is?. Is it is RTP/RSTP?. mainly streaming packets? thanks.
0
8944
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, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
8772
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 effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
9303
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
6732
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 presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
4546
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
4803
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
3258
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 we have to send another system
2
2714
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
2176
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 can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

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.