Excel2MySQL is the easiest way to import Excel spreadsheet directly as a table into MySQL. To import OpenOffice calc, simply save as xls and then import. Full disclosure, I am the author of Excel2MySQL.
It meets all of your requirements:
- Each sheet is imported as a table in MySQL. In fact, the table is automatically created.
- The headers of the table can be used to define the fields of the MySQL Table.
- Excel2MySQL DOES smart analysis on column data type to automatically optimize the table field types (tinyint, smallint, mediumint, int, bigint, float, double, varchar, date, time, datetime)
- Connects directly to your MySQL Server
- Includes a command line interface, if you need to automate imports.
- Append or replace existing table
- Automatically detect and add new fields in existing table
- Automatically explode Excel merged cells (not the same as unmerge).
- Optionally exclude blank rows and blank columns
- Optionally change spaces to underscores in field names (convenience function)