У меня есть таблица базы данных, из которой, когда я выбираю данные с именем пользователя и паролем, он работает, но когда я вставляю некоторые данные в эту таблицу с одинаковым именем пользователя и паролем, это показывает мне ошибку
INSERT command denied to user 'username'@'localhost' for table 'tablename' 
Я искал с помощью Google, а у кого-то была такая же проблема с размером db. Я проверил свой db, и когда я перехожу непосредственно к phpmyadmin для вставки данных в таблицу, он работает, но когда я вызываю запрос в таблицу из скрипта PHP, это дает мне ошибку.
Это проблема с разрешениями. Войдите в приглашение MySQL с пользователем, которым работает приложение, и введите этот запрос:
 SHOW GRANTS; 
Это покажет вам привилегии ( гранты в MySQL-talk), которые есть у текущего пользователя. Я предполагаю, что вы не увидите привилегии INSERT для данной таблицы. Вам понадобится пользователь root, чтобы предоставить вам разрешение, выполнив этот запрос:
 GRANT INSERT ON 'db'.'tablename' TO 'username'@'localhost' 
  У меня была аналогичная проблема после переноса моего сайта с одной учетной записи хостинга на другую.  Проблема была вызвана SQL-запросом ( INSERT ), который ссылался на старую базу данных.  заменив старый db новым именем db (или просто удалив имя db в целом), решила проблему.  Но эта ошибка заставила людей поддержать мою хостинговую компанию. 
Пример:
 INSERT INTO old_db_name.table_name ( ) VALUES (); 
Изменился на:
 INSERT INTO new_db_name.table_name ( ) VALUES ( ); 
Надеюсь, это помогает и имеет смысл.
Проверьте код SQL.
И просто удалите dbName, если у вас есть.
Пример:
 insert into `dbName`.`tableName` ( columns ) values ( values ); 
Изменить на:
 insert into `tableName` ( columns ) values ( values ); 
  Это также случилось со мной, и проблема в том, что когда вы вызываете команду INSERT в вашем php-файле, вы должны указать другую базу данных. 
  Короче, найдите, где находится ваша команда INSERT, и проверьте ее your_database_name ниже 
 "INSERT INTO \`your_database_name\`.\`your_table_name\` 
Это может решить вашу проблему. Конечно, если вам предоставлены все привилегии.
В вашем запросе вы можете использовать имя таблицы с именем базы данных «INSERT INTO DB_NAME.table_name …», где у пользователя базы данных нет разрешений на вставку для DB_NAME. Таким образом, эта ошибка возникает, потому что запрос указывает на таблицу другой базы данных.
Вам нужно удалить имя базы данных или использовать правильное имя базы данных.
Убедитесь, что у вас есть открытое соединение с базой данных.
Если у вас есть отдельные функции для подключения к базе данных и для значений вставки проверьте подключение к базе данных открыто или нет.