
Create Stored Procedure using Migration in Laravel 9
Create Stored Procedure using Migration in Laravel 9
Hello everyone, in this post we will look at how to solve "Create Stored Procedure using Migration in Laravel 9" in programming.
How to create and call stored procedure using migration in Laravel 9. I am not able to create a stored procedure and call that procedure using Laravel. Please help me to create the stored procedure.-
Create stored procedure using migration in Laravel 9
Create stored procedure
1. Create migration file using below command.
php artisan make:migration create_get_post_by_userid_procedure
2. Open created migration file.
File name will be different.
database\migrations\2022_08_18_072135_create_get_post_by_userid_procedure.php
3. Add the content to created migration file.
<?php use Illuminate\Database\Migrations\Migration; use Illuminate\Database\Schema\Blueprint; use Illuminate\Support\Facades\Schema; return new class extends Migration { /** * Run the migrations. * * @return void */ public function up() { $procedure = "DROP PROCEDURE IF EXISTS `get_posts_by_userid`; CREATE PROCEDURE `get_posts_by_userid` (IN idx int) BEGIN SELECT * FROM posts WHERE user_id = idx; END;"; DB::unprepared($procedure); } /** * Reverse the migrations. * * @return void */ public function down() { } };
4. Run migration command to migrate.
To run all migration you can call php artisan migrate command.
php artisan migrate
Or
To Run specific migration file you can specify the path of migration file using
–path=
php artisan migrate --path=/database/migrations/2022_08_18_072135_create_get_post_by_userid_procedure.php
Call stored procedure
routes\web.php
Route::get('call-procedure', function () { $userId = 1; $getPost = DB::select( 'CALL get_posts_by_userid('.$userId.')' ); dd($getPost); });
Output :
^ array:5 [▼ 0 => {#313 ▼ +"id": 11 +"title": "Labore do commodi et" +"slug": null +"body": "" +"is_shared": 0 +"parent_id": null +"user_id": 1 +"created_at": "2021-10-13 05:10:23" +"updated_at": "2021-10-13 05:10:23" } 1 => {#315 ▼ +"id": 16 +"title": "Sit quibusdam qui au" +"slug": null +"body": "Magni aut et velit e" +"is_shared": 0 +"parent_id": null +"user_id": 1 +"created_at": "2021-10-13 11:22:51" +"updated_at": "2021-10-13 11:22:51" } 2 => {#316 ▶} 3 => {#317 ▶} 4 => {#318 ▶} ]
If you like what you are reading, please consider buying us a coffee ( or 2 ) as a token of appreciation.
Don't forget to share this article! Help us spread the word by clicking the share button below.
We appreciate your support and are committed to providing you valuable and informative content.
We are thankful for your never ending support.
Random Code Snippet Queries: Laravel
- How to add unique records in pivot columns of Laravel pivot table
- How to get count of all records created at yesterday
- Get id of last inserted record in laravel
- Call to undefined method App\Models\User::follow()
- SQLSTATE[23000]: Integrity constraint violation: 1022 Can't write; duplicate key in table
- Pass value from controller to model in laravel
- Laravel specific table Migration
- Undefined property: stdClass::$title
- Array to string conversion laravel blade
- Composer\Exception\NoSslException
- Multiple Level eager loading in Laravel
- Get laravel version
- Print last executed query in laravel
- How to create and run user seeder in laravel
- How to call model in blade laravel
- How to automatically update the timestamp of parent model in Laravel
- Use of undefined constant laravel
- Ajax POST request in laravel
- Laravel create multiple records in Pivot table
- SQLSTATE[42S22]: Column not found: 1054 Unknown column 'users.post_id' in 'where clause
- How to get file extension from input type file in laravel
- Laravel create table migration with model
- Send post data from controller to view
- How to remove package from laravel
- How to get route name on visit URL in laravel