
Good content takes time and effort to come up with.
Please consider supporting us by just disabling your AD BLOCKER and reloading this page again.
Many times when you are working on SQLite database with Laravel you might have come across a wired error that SQLite doesn't support dropping foreign keys.
The reason is SQLite database has no concept called foreign keys. Let's fix this issue in Laravel.
To fix the DBAL issues make sure to install the following package.
composer require doctrine/dbal
Example 1
public function down()
{
Schema::table('comments', function (Blueprint $table) {
$table->dropForeign(['parent_id']);
$table->dropColumn(['parent_id']);
});
}
Example 1
public function down()
{
Schema::table('comments', function (Blueprint $table) {
/** Make sure to put this condition to check if driver is SQLite */
if (DB::getDriverName() !== 'sqlite') {
$table->dropForeign(['parent_id']);
}
$table->dropColumn(['parent_id']);
});
}
You can put this condition for multiple columns too.
Example 2
public function down()
{
Schema::table('payments', function (Blueprint $table) {
if (DB::getDriverName() !== 'sqlite') {
$table->dropForeign(['coupon_id']);
$table->dropForeign(['currency_id']);
}
$table->dropColumn(['status', 'currency_id', 'coupon_id', 'notes', 'invoice_number']);
});
}
I hope this might have solved your issues. Happy coding.
PHP Built-In Web Server & Testing Your Development Project In Mobile Without Any Software
Why namespace And use Keywords Used In PHP
Multiple GIT Key Pairs Or Account In The Same Computer
Localization In Laravel REST API
Facebook Login With PHP Laravel Socialite
GitHub Login With PHP Laravel Socialite
Why You Should Run Cronjobs In Laravel?
Create Gmail App Password For SMTP Mails
Use Different PHP Versions In Ubuntu / Linux
Lazy Load YouTube And Other Videos In Website
Testing Laravel Emails With MailHog