Why is it considered bad practice to create a new table for each user in a MySQL database in PHP?

Creating a new table for each user in a MySQL database in PHP is considered bad practice because it can lead to a large number of tables, making it difficult to manage and scale the database. Instead, a better approach is to have a single table for all users and use a unique identifier, such as a user ID, to distinguish between different users.

// Create a users table with a user_id column as the primary key
$createTableQuery = "CREATE TABLE users (
                        user_id INT AUTO_INCREMENT PRIMARY KEY,
                        username VARCHAR(50) NOT NULL,
                        email VARCHAR(100) NOT NULL,
                        password VARCHAR(255) NOT NULL
                    )";
mysqli_query($connection, $createTableQuery);