473,785 Members | 2,221 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 5907
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
1907
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
3215
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
1958
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
1834
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
1767
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
5463
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
2928
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
4827
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
1600
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
1516
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
9489
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
10162
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
10100
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
1
7509
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
6744
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5396
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...
1
4061
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
3665
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
2893
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.