Yes, it can be done.
First you'll need to write some code to upload a file.
Next you'll need to read the file in. I recommend line by line so not to stress out your webserver.
Here's where you can get creative. You can write your own CSV parsing routine. Or you can use PHP's [man]fgetcsv[/man] or you probably can find a library to use instead. Either way, parse the data into something meaningful.
Once parsed, build an insert statement to add the data to your database.
Another approach is to use MySQL's batch load statements (assuming you're using MySQL). There's an "INSERT from file" command, although I don't have the details at the top of my head at the moment (but I'm sure MySQL's website talks about this).