SQLSTATE [28000] [1045] Доступ запрещен для пользователя [дубликат]

Версия stardard-SQL с использованием логической логики :

SELECT company_name
     , COUNT(action = 'EMAIL' OR NULL) AS "Email"
     , COUNT(action = 'PRINT' AND pagecount = 1 OR NULL) AS "Print 1 pages"
     , COUNT(action = 'PRINT' AND pagecount = 2 OR NULL) AS "Print 2 pages"
     , COUNT(action = 'PRINT' AND pagecount = 3 OR NULL) AS "Print 3 pages"
FROM   tbl
GROUP  BY company_name;

SQL Fiddle.

Как?

TRUE OR NULL дает TRUE. FALSE OR NULL дает NULL. NULL OR NULL дает NULL. И COUNT учитывает только ненулевые значения. Вуаля.

10
задан Kevin Steen Hansen 30 March 2015 в 12:07
поделиться

7 ответов

Я понял это :) Если бы случайно файл .env:)

Есть ли какие-либо изменения в схемах?

Не должно работать:

public function up()
{
    // Create table with columns
    Schema::create('users', function($table) {
        $table->increments('id');
        $table->string('username');
        $table->string(Hash::make('password'));
        $table->string('firstname');
        $table->string('lastname');
        $table->string('email')
        $table->string('role');
        $table->timestamps();
    }); 

}

/**
 * Reverse the migrations.
 *
 * @return void
 */
public function down()
{
    // Insert table to database
    Schema::drop('users');
}
4
ответ дан Kevin Steen Hansen 21 August 2018 в 14:15
поделиться

У меня такая же проблема после создания проекта laravel. Команда аутентификации выполняется успешно.

 php artisan make:auth

Но когда я пытаюсь зарегистрироваться или войти, я получил ту же ошибку. Я запускаю следующую команду

    php artisan config:clear

, затем остановил приложение laravel, а также мой сервер. после перезапуска моего приложения larvel и сервера все было в порядке.

0
ответ дан Ali 21 August 2018 в 14:15
поделиться

Практически, когда вы используете сервер localhost, например xampp, вы создаете базу данных вручную «homestead», такие ошибки связаны с отсутствием аргументов базы данных. 100% процентов опробовали его и увидели

, набрав ваш cmd и введите:

create database homestead;  
0
ответ дан delino 21 August 2018 в 14:15
поделиться

Вносить изменения в файл database.php в ** config> local> database.php, а не изменять config> файл database.php.

надеюсь, что он будет работать;)

0
ответ дан Mayur Vadher 21 August 2018 в 14:15
поделиться

Попробуйте проверить файл «.env» в корневом каталоге. Эти значения берутся первыми. Ваши данные - это только значения по умолчанию, если в файле .env нет данных.

DB_CONNECTION=mysql 
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=Your_Database_Name
DB_USERNAME=Your_UserName
DB_PASSWORD=Your_Password
0
ответ дан naib khan 21 August 2018 в 14:15
поделиться

Я попытался внести изменения в файл database.php, присутствующий в папке config, он выглядит примерно так:

'default' => 'mysql',
....
...
'mysql' => [
            'driver'    => 'mysql',
            'host'      => env('DB_HOST', 'localhost'),
            'database'  => env('DB_DATABASE', 'sample'),
            'username'  => env('DB_USERNAME', 'root'),
            'password'  => env('DB_PASSWORD', ''),
            'charset'   => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix'    => '',
            'strict'    => false,
        ],

Я не использую какую-либо виртуальную машину, я использую свой локальный компьютер с пользователем базы данных как root и password null.

Я также изменил файл .env, и он выглядит примерно так:

APP_ENV=local
APP_DEBUG=true
APP_KEY=zLzPMzs5W4FNNuguTmbG8M0iFqhIVnsP

DB_HOST=localhost
DB_DATABASE=sample
DB_USERNAME=root
DB_PASSWORD=null

CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync

MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null

Даже после выполнения всех изменений, когда я пытаюсь зарегистрироваться используя регистрационную форму, которая поставляется с laravel, я пытаюсь добавить пользователя в свою базу данных. Я получаю следующую ошибку: [gg]

После выполнения всех изменений Я очистил кеш и снова загрузил его, и теперь он работает для меня! если любой из них также сталкивается с той же проблемой, просто запустите следующие команды

php artisan cache:clear
php artisan config:cache
25
ответ дан Supravat 21 August 2018 в 14:15
поделиться
  • 1
    Большое спасибо. Команда двух мастеров спасла мой день. Когда-нибудь Ларавел становится противным. – PHPst 5 February 2016 в 13:59
  • 2
    работает для меня ура! спасибо @ Суправат – Jatinder Kaur 26 October 2016 в 09:27
  • 3
    Работал и для меня ... Thnx! – DpEN 5 July 2017 в 14:55
  • 4
    Совсем недавно начал использовать Laravel 5.4 и имел такую ​​же проблему. Это очень помогло, эти команды. – Mena 5 August 2017 в 06:04
  • 5
    Я должен отметить эти две строки. Работал как шарм. php artisan cache: очистить конфигурацию php artisan: кэш – Melih 12 October 2017 в 23:28

Пробовал все решения здесь, но не работал для меня

Это работало с первой попытки:

Если вы используете веб-сервер по умолчанию PHP (например, php artisan serve), вы должны перезапустить свой сервер после изменения значений файла .env.

Я нашел это решение здесь laravel.io (Прочтите решение Byjml)

0
ответ дан Udhav Sarvaiya 21 August 2018 в 14:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: