Completely new to databases, help and advice is welcomed

Discussion in 'MySQL' started by red-sky, Oct 24, 2008.

  1. #1
    Hi,

    I am currently building a website to sell gaming products, so this is going to require a large database, I have not created a database online before, I was wondering if anyone could offer any advice or resources that I could look at for tips and advice to see what options are available to me.

    P.s. I'm suprised there's not sticky for beginners with databases :confused:

    Thanks in advance
     
    red-sky, Oct 24, 2008 IP
  2. nish7x

    nish7x Well-Known Member

    Messages:
    120
    Likes Received:
    5
    Best Answers:
    0
    Trophy Points:
    130
    #2
    It's very simple to create a database and associate a user with it automatically. Are you using cPanel ?
     
    nish7x, Oct 24, 2008 IP
  3. red-sky

    red-sky Peon

    Messages:
    89
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #3
    Yeah I have cPanel, I was hoping maybe I could create the database in MS Access and upload it to use online, would this work? Would querying it be just as fast as MySQL? What's the best approach?
     
    red-sky, Oct 24, 2008 IP
  4. roym

    roym Peon

    Messages:
    38
    Likes Received:
    1
    Best Answers:
    0
    Trophy Points:
    0
    #4
    The speed of database engine doesn't vary too much between the "modern" engines, though MSAccess isn't the best, but then again "visible" performance won't be an issue for most sites, and how you design your database (indexes, table structure, datatypes) will have a bigger impact than anything. It all depends on what you mean by a "large" database, pretty much any database (even a badly structured one), won't have much of a problem on modern systems with a few thousand records. The issues begin when you start dealing with text fields on millions of records, as I doubt you are going down that line, I'd just look at what's around for free and runs on the platform you are targetting, for windows go with SQL Express - limitations are 4 gigabyte databases (more than enough for general ues), and only can utilize one cpu, but nice and easy to use. Or probably mysql for other platforms - no limitations but not so straightfoward to set up and run. But you really need to consider security issues, and from the tone of your question I would strongly suggest you read up some on common db issues from sql injection to inference and that should give you a better idea of how to procced.
     
    roym, Oct 24, 2008 IP
  5. red-sky

    red-sky Peon

    Messages:
    89
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #5
    Hi,

    Thanks for your tips mate, I know about SQL injection and other threats but users won't be entering or have any interaction with the database, so does this remove the possibility of SQL injection completely (surely?)?

    There's no way that I will be dealing in the millions of records, possibly thousands, so would you recommend the MS Access upload or to construct it with MySQL? I wouldn't have a problem with MS Access, but if MySQL is benefit me then im always willing to learn (I know SQL syntax and everything about querying, it's just the construction of the database that I struggle with with MySQL).

    All help is greatly appreciated :)
     
    red-sky, Oct 24, 2008 IP
  6. Nigel Lew

    Nigel Lew Notable Member

    Messages:
    4,642
    Likes Received:
    406
    Best Answers:
    21
    Trophy Points:
    295
    #6
    You may want to ask this fellow. I don't know him but he seems quite helpful on DP.

    hope that helps, I have a high level programmer for that sort of thing. Its not exactly what I do ;)

    Nigel

    Edit: sorry, http://forums.digitalpoint.com/member.php?u=35444
     
    Nigel Lew, Oct 24, 2008 IP
  7. jestep

    jestep Prominent Member

    Messages:
    3,659
    Likes Received:
    215
    Best Answers:
    19
    Trophy Points:
    330
    #7
    I would not recommend MS Access under any circumstance. Access is not even a real database. It's basically Excel on steroids. If you are having problems with MySQL, I recommend finding a good MySQL GUI. Command line editing can be a bit intimidating at first, but MySQL should suit your needs at almost any level. It runs on Windows and Linux and is by far the easiest to use and best supported database out there. Try using Navicat if you need a good MySQL GUI (Free version for personal use, and a free trial) - http://www.navicat.com/
     
    jestep, Oct 24, 2008 IP
  8. jestep

    jestep Prominent Member

    Messages:
    3,659
    Likes Received:
    215
    Best Answers:
    19
    Trophy Points:
    330
    #8
    {dup Post Please Delete}
     
    jestep, Oct 24, 2008 IP
  9. Sean@WMS

    Sean@WMS Peon

    Messages:
    134
    Likes Received:
    6
    Best Answers:
    0
    Trophy Points:
    0
    #9
    I respectfully disagree with jestep; MS Acess can be a perfectly dandy db and lightning fast for many purposes. HOWEVER, there are some things to understand:
    1. An Access (.mdb) database is a FILE, unlike SQL db's such as MySQL & MS SQL
    2. There are some issue with SQL syntax that are different with MS Access (most esp. with date range querries and some issue vis a vis currency)
    3. Manual updates can be a bitch as IT'S A FILE, so you'd have to pull it down, edit it, and put it back up and hope nothing else changed in the meantime
    4. The major limitation of Acess is that IT'S A FILE, so it can only handle ONE transcation at a time (consensus seems to be ~ 12-20/second). A "transaction" is essentially any event that changes data in the database such as writing, editing or deleting.
    That being said, it's a easy db application to learn some basics about database structure and theory -- most especially wrapping your mind around relational database structures. At the very least, you could start playing around with learning some things about databases with Access, even if that's not ultimately what you want to deply. Also, you can pretty easily "upsize" an Access db to MS SQL.

    As you are just learning about databases you'll find more of a learning curve with a SQL db; however, as it seems like you are saying that all the db will be used for is reading, then I wouldn't push you away from Access.

    As for SQL Injection issues, ironically as Access is not a system but a FILE, it's immune to some of the nastiest attacks, but it's just as volunerable as any other db if protections aren't dealt with on the scripting side, and you don't have the luxury of using Stored Procedures as a layer of protection. Also, on this point, just because you may be simply reading data doesn't make a db immune either -- so long as there are any querry strings that could be hijacked.
     
    Sean@WMS, Oct 24, 2008 IP