Is it ok to let users add new columns and tables to your database?
Database design is both an art and a science. End users usually understand neither the art nor the science.  I don't let end users add tables or alter tables; I've never worked anywhere that allowed anything like that.

End users will almost invariably build things that look like either Word documents or Excel spreadsheets. They will only rarely build things that look like databases.


  The point is to create a management system for information within the
  company.


That's what a database is for. If your database is basically a table, as you seem to be saying, I think your users would be better off with a database.

As a database designer, I find these features to be indispensable. I'll give you the SQL keywords and concepts; you can look them up with Google if you like.


CHECK constraints
GRANT and REVOKE
Updatable views
Materialized views
Stored procedures
Foreign key constraints
"Exotic" indexes (function-based indexes, partial indexes, clustered indexes)
PRIMARY KEY and UNIQUE constraints


If you're not going to provide similar features, you should think hard about what might happen. If you don't provide something similar to GRANT and REVOKE, somebody will drop a table or delete rows they shouldn't touch sooner or later.

If you are going to provide similar features, you're reinventing the wheel.