Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I've been looking to apply to various web development intern jobs, and I feel comfortable with the PHP/CSS/HTML that they are asking for, but what does MySQL proficient mean?

I've designed my own databases in phpAdmin and used them in the CMS I created, does that mean I'm proficient in MySQL?

Do you just need to be able to create a database and then update/delete/insert fields in there?

Would knowing this much allow me to put MySQL on my resume?

share|improve this question

migrated from stackoverflow.com Feb 27 '11 at 0:59

This question came from our site for professional and enthusiast programmers.

    
This very much depends on the job you are applying for. If you are applying for a general web development job, then yes, you are probably alright. If this job is managing database servers, then you might want a little more experience. –  Brad Feb 26 '11 at 23:51
2  
Perhaps more suitable for programmers.stackexchange.com –  Mark Byers Feb 26 '11 at 23:52
    
I would say that your knowledge about MySQL is not sufficient to call yourself a MySQL professional. –  cypher Feb 26 '11 at 23:54
    
It very much depends on whether you are looking at entry-level jobs or not. If you are looking at entry-level jobs or jobs mainly focussed on HTML/PHP/CSS they are most likely going to expect you to be able to select, update, delete, join, drop etc. If this is for a more advanced job or more database related then I'd say you need to be able to have much more familiarity with SQL. –  WuHoUnited Feb 27 '11 at 0:13
add comment

3 Answers

up vote 6 down vote accepted

An expert should know all of these:

  • Basic SELECT, INSERT, UPDATE, DELETE commands
  • CREATE, DROP, TRUNCATE commands
  • Stored procedures
  • How to create and maintain indexes
  • How to look at and analyze a query plan
  • How to perform joins and the performance implications of doing so
  • Familiarity with all column types
  • Be able to set up a MySQL instance

If you know several of these, you can probably consider yourself proficient.

share|improve this answer
    
Is that really all you need to know to be a mySQL expert? –  symcbean Feb 27 '11 at 0:03
    
I didn't say that :) An expert should know all of these, but probably much more as well. Was trying to give at least a starting list, but definitely not exhaustive. –  jterrace Feb 27 '11 at 0:09
    
Thanks a lot, I'll look into some SQL lessons before I apply. –  Augury Feb 27 '11 at 0:51
add comment

MySQL proficient means that you do not necessarily need any utility such as PHPMyAdmin to manage database(s). It means that you can do everything from command like using SQL syntax. In other words it means that you know SQL (MySQL) well enough that you can do whatever data management you need to do manually without using any apps like PHPAadmin or any other GUI based applications.

share|improve this answer
add comment

It means whatever the person asking the question wants it to mean.

When I've recruited programmers I would expect them to understand database normalisaton, database design and DML. (the second of these encompasses DDL but does much further). For MySQL, I'd expect a basic understanding of the standard storage engines, methods of tuning and scaling and how MySQL integrates/connects with other systems.

If I were interviewing you, the alarm bells would be ringing by now - you only appear to have used one tool to interact with the system, you've not mentioned relational databases and you say you've only ever worked on your own code. I'd recommend you address points first.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.