Database question
Results 1 to 9 of 9

Thread: Database question

  1. #1
    Junior Member
    Join Date
    Jun 2005
    Posts
    25

    Question Database question

    Hi everyone

    just one question what is the best database to use when programming ACCESS,SQL,PARADOX

    I need to no the possibility of corruption,security,datalose ext.

    thanx guys

  2. #2
    Super Moderator: GMT Zone nihil's Avatar
    Join Date
    Jul 2003
    Location
    United Kingdom: Bridlington
    Posts
    17,190
    Sorry maddog1 you are asking the wrong questions.

    1. The actual database should not be providing your security, your system and network should be doing that.

    2. What are you trying to develop? By that I mean local, distributed, how large, how many concurrent users?

    OK I will give my opinion on the three you mention:

    1. ACCESS, this is an entrant level system. It works fine on a stand alone machine, pretty good on local networks and acceptably on wide area networks PROVIDED THAT you restrict the number of users to the application that you have developed.

    2. PARADOX (Borland) This is capable of faster processing and higher speeds than ACCESS. It is a more powerful version of ACCESS and will support more concurrent users. I haven't used it for a while because I would go for MSQLDB as the big brother?

    3. SQL this is great for distributed applications across a WAN. You can have masses of users and run quite complex applications with no problems. It will interface seamlessly with other Microsoft applications.

    Remember that all databases need housekeeping and enough resource to run on.

    If you cannot do someone any good: don't do them any harm....
    As long as you did this to one of these, the least of my little ones............you did it unto Me.
    What profiteth a man if he gains the entire World at the expense of his immortal soul?

  3. #3
    Senior Member
    Join Date
    Mar 2004
    Posts
    557
    Hi

    The optimal choice of the database depends mainly on the scale we
    are talking about here, as mentioned by nihil.

    For small, personal use, I actually would recommend mySQL[1]. The
    "security" feature is the Access Privilege System[2]. This is nothing
    extraordinary and has its "implementation" in all database systems
    (to put it simple). A regular backup of a consistent database should
    do the job.

    For larger scales, I really would develop on something supporting
    TSQL[3], which are Microsoft SQL server[4] (download express[5])
    or Sybase (download linuxpromo[6]). Once you are familiar with TSQL,
    you actually don't know how to handle Access anymore

    As per security considerations. Is the number of vulnerabilities
    of a piece of software a measure for its level of security?
    A collection of good articles can be found at about.com[7].
    Make yourself aware of the worth of your assets, and how
    a particular choice of a db can mitigate your risk. I apologize
    for the general statements, but that is the best I currently
    can offer.

    Cheers.

    [1] http://dev.mysql.com/downloads/
    [2] http://dev.mysql.com/doc/mysql/en/privilege-system.html
    [3] http://msdn.microsoft.com/library/de...qlcon_6lyk.asp
    [4] http://www.microsoft.com/sql/default.mspx
    [5] http://lab.msdn.microsoft.com/express/
    [6] http://www.sybase.com/linuxpromo
    [7] http://databases.about.com/od/security/
    If the only tool you have is a hammer, you tend to see every problem as a nail.
    (Abraham Maslow, Psychologist, 1908-70)

  4. #4
    Junior Member
    Join Date
    Jun 2005
    Posts
    25
    Well it is a huge project for the farmers in south africa to keep track of what is happening on the farm it will include pest control,book keeping,wages,water control,life stock,fleet control ext. but it will be eccesible from the net for me to do the maintenance on the DB.

    Can i do the maintenance on the DB over the net or not.
    There are ten kinds of people:
    Those who understand binary and Those who don\'t

  5. #5
    Super Moderator: GMT Zone nihil's Avatar
    Join Date
    Jul 2003
    Location
    United Kingdom: Bridlington
    Posts
    17,190
    Hmmm,

    Is this distributed or centralised? I mean would each farm have its own local database or will it be on central server(s)?

    Yes you can do remote maintenance so long as the connection is enabled and you have the password (that's the password to maintain the database which the farmer should not have )

    The new question is infrastructure design?...........stand alone, distributed or centralised, and to what degree.

    I would say at this stage you can rule ACCESS out for sure
    If you cannot do someone any good: don't do them any harm....
    As long as you did this to one of these, the least of my little ones............you did it unto Me.
    What profiteth a man if he gains the entire World at the expense of his immortal soul?

  6. #6
    Banned
    Join Date
    Jul 2005
    Posts
    511

    Thumbs up Re: Database question

    Originally posted here by maddog1
    Hi everyone

    just one question what is the best database to use when programming ACCESS,SQL,PARADOX

    I need to no the possibility of corruption,security,datalose ext.

    thanx guys
    Let me counter this with another question... What is the best car to drive in?

    With databases, it's just as similar as with cars. So many brands, so many models, so many versions, so many things you can alter to it. Basically, what is important is your budget and the number of "passengers" that will have to get inside. And of course the price of maintenance. The road quality would also be important to determine the proper car. If you mostly drive over muddy terrain with lots of speedbumps, you would probably not want to ride a sports-model Ferrari...

    With databases, there's always a price. Paradox comes with Corel Office or Borland Delphi and can be purchased as a separate product too. Since you've mentioned Paradox, I assume you are a Delphi user since these two have a very close relationship. Access is part of Microsoft Office and an existing Access database can be used free of charge through ADO, however if you want to design new Access databases, you probably need to purchase Access first. If your database will have many users accessing it at the same time, you might consider selecting a client-server based database system. Consider SQL Server, DB2, InterBase/FireBird or Oracle. In general, you would install these databases on one computer and access these databases from a second computer so this computer can be dedicated to just one thing: running the database. This gives a good performance but requires more hardware. So this helps you to determine if the cost of the database fits your budget...
    The number of passengers with databases is basically the number of users that will be accessing it at the same time. Paradox and Access don't perform that well if you have hundreds of requests made by multiple users. With Paradox, it can get even worse since the Paradox indices tend to become corrupt in multi-user environments. Access just slows down to a near-halt, though. With many passengers, you would prefer to drive a bus instead of a Trabant... And of course, SQL Server, DB2 and Oracle are the biggest busses in Database-country. InterBase is large, but not as large as the others.
    But a big bus will require regular maintenance. Especially Oracle will require a well-trained DB Administrator to make sure everything runs like a well-oiled machine. Thus Oracle is a bit expensive to maintain. DB2 and Interbase are slightly less expensive in maintenance but still, you will need a trained expert to keep an eye on the system. SQL Server is the most user-friendly of all these big busses but I would advise to find a trained monkey or whatever to keep an eye on it. And be aware, when SQL Server seems to perform badly, it might be too difficult for that trained monkey to solve the problem so that would require hiring some additional expert for a few days to fix those problems. If you're lucky, the monkey can keep it running for years, though...
    And then the road quality. In other words, the operating system. It seems you're going to connect your system to the outside world (through the Internet) so you probably want your database to be stored in a safe location. Well, in a client-server setup where you use two PC's, this should not be a problem. One system would be the Database server and the second is e.g. a webserver that connects as a client to the database. Still, you have to be aware of many intruders that might want to break into your database. You would have to protect both systems... In general, InterBase, DB2 and Oracle seem to be more secure in general, especially when used on a Unix system instead of a Windows box. But I have no experience with that. SQL Server only runs on the Windows road, though... With SQL Server you do limit yourself in the places that you can drive to, although most places are connected to this anyways...

    As you say in a later post, it will probably be used by quite a few users. Probably as the backbone of a webserver application, correct? And you don't seem to be that experienced with databases so you'd qualify to become the trained SQL Server monkey. Oh, don't worry... This world is full with those anyway...
    Just keep in mind that when you can maintain your DB over the net, then all other people on the net might attempt to maintain your database too. You can expect that people will try to hack your system, although it does matter how interesting your information actually is.

    Do you realise that many insecure sites are not hacked simply because no one cares for the contents of those sites?... It doesn't sound as if your system has lots of interesting information to begin with so I don't think it will be targetted by thousands of hackers every day. Just make sure you make a daily backup of the database (preferably even more) and store those backups for at least 6 months or more. (Use incremental backups to save diskspace.)
    And don't make the same mistake as I did once. I stored a backup on the same disk as the original data. (Some school project that I stored on an USB pen-memory.) I lost that disk and with it not just my original project but also the backup...
    (Found it again two days after I had to submit that project. It had gone through the washing machine...)

  7. #7
    Senior Member
    Join Date
    Mar 2004
    Posts
    557
    Hi

    maddog1, no offense here: Do you have to be the maintainer
    of this database, or do you want to? I hope, you can understand,
    that based on

    huge project for the farmers in south africa
    (...)
    me to do the maintenance on the DB
    (...)
    Can i do the maintenance on the DB over the net or not.
    and without knowing you, I actually would feel uncomfortable
    to delegate the security and integrity of my database(s) to
    you. Just have in mind, that outsourcing to a trustworthy
    partner might be the better option.


    Apart from this aspect, to your question. Yes, web maintenance
    is possible in principle.


    It seems to boil down to a decision to be taken - which product
    in which environment (homogeneous?). Katja did a decent job to
    present a few solutions available. But in the end, it is up to
    you to choose. What is the value of your assets and what are the
    threats and vulnerabilities to them? What are the cost of
    countermeasures?

    Somewhere, you have to start. There are several layers, your security
    plan should include, besides the security policy. Let me brainstorm:
    Starting with physical security, accessibility, Multi-Tier setup[2],
    Authentication mechanisms (from a SSL point of view, from a design
    point of view (role-based)), integrity, encrypted connections in
    general (e.g. SSL, IPSEC), service/daemon mode, forms of backup
    updating, patching, access privilege model, server errors, injections,
    ... , auditing. Such a document can be written in a general sense,
    but in particular, if you have to assign numbers, it is based on a
    specific database environment. Do some reading in general[3] and get
    an idea of vulnerabilities[4]. Also, it always useful to let do others
    the work for you: Ask local key-account managers of database contractors/
    manufacturers.


    In case you have just skipped, what I have written - again: What environment
    are you in? server: distributed/centralised? clients: homogeneous OS's,
    remote or local? Anticipated load? Funding? With that, get in contact
    with professionals.


    Cheers



    [1] http://www.microsoft.com/technet/pro.../security.mspx
    [2] http://en.wikipedia.org/wiki/Multitier_architecture
    [3] http://database.ittoolbox.com/nav/t....1&p=371&h1=371
    [4] http://database.ittoolbox.com/browse...Security%2Epdf
    If the only tool you have is a hammer, you tend to see every problem as a nail.
    (Abraham Maslow, Psychologist, 1908-70)

  8. #8
    Junior Member
    Join Date
    Jun 2005
    Posts
    25
    Well thanx for the replies but I only asked if it es possible and i wanted to do the maintenance because I don't want all the phone calls 12 o clock at night from some dumb farmer telling me that he can't switch on his computer to do his dayly work on my program but thanx any why guys you helped alot see you again soon.
    There are ten kinds of people:
    Those who understand binary and Those who don\'t

  9. #9
    Banned
    Join Date
    Jul 2005
    Posts
    511
    maddog1, if those dumb farmers are the ones who pay your salary, you better don't call them "dumb"... They are your customers and your job depends on their opinion of you. We all know that the average user is just a dumb monkey trained just to type 10 words per minute or so, but we're not supposed to tell them that!

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

 Security News

     Patches

       Security Trends

         How-To

           Buying Guides