When you say "memory" I hear you say you need more space for your program. When you talk about SD cards and SQL databases I hear you're after storage space. So I'm a bit confused.
I'd guess if you're building a robot arm, you'll be happy with the built-in capabilities of the Arduino. If you need to store masses of info you could add an SD-card shield (as I've done for logging GPS info) but you'll need to read and write files to do that. If you end up connecting your Arduino to a database I want to hear about that!
I don't feel I've been too helpful. Can you explain more about what you need the "space" for?
Chris.