Hi,
I am new to using mysql. I want to prepare an application for my employer.
The
application will be accessed by staff from as many as 10 different
departments
such as sales, marketing, admin, finance etc. The users will be using DML
commands
on the tables. My question has two parts:
Part I:
While designing the schema of the database, I have two choices:
Scenarios:
1. Create multiple tables, one for each department. The relationship for
most of the tables is one-to-one.
2. Create one master table so that each department updates its respective
columns in the same table.
Please advise which choice is better.
I fail to see what kind of data a table ("one for each department") would
hold?
How would a single table ("one master table") hold the data for the
processes of this
application?
What should the application do?
Questions:
1. With single table will table locking become an issue if multiple users
edit the table simultaneously
or is it something that mysql can handle without problem?
It depends on the storage engine.
2. What is the maximum recommended size of a table for mysql? How many
columns should be
master table should have ? Is it recommended to design a master table
having more than 200 columns?
Have you ever read a book on database design & normalization?
PART II:
Secondly, I am using PHP, Mysql, ADODB, APACHE on windows 7 platform. This
is my typical DML command:
I am not using any rollback statement to rollback the db if the DML command
is not completed successfully. Is
it advisable to use rollback? If it is how should I modify the above
statement to include it ?
If the DML command failed and modifies a single row only, the "rollback"
won't do anything,
but if it updates multiple rows or trying to do a "unit of work" inside the
same transaction,
things become different.
Have you ever read about atomicy on database transactions?
With regards,
Martijn Tonies
Upscene Productions
http://www.upscene.com
Download Database Workbench for Oracle, MS SQL Server, Sybase SQL
Anywhere, MySQL, InterBase, NexusDB and Firebird!
Database questions? Check the forum:
http://www.databasedevelopmentforum.com
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/mysql?unsub=arch...@jab.org