dayatdev/laravel-oracle-sequence 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

dayatdev/laravel-oracle-sequence

Composer 安装命令:

composer require dayatdev/laravel-oracle-sequence

包简介

A Laravel package to handle Oracle SEQUENCE operations (auto NEXTVAL and sequence creation) easily.

README 文档

README

Latest Version on Packagist Total Downloads

🔁 Library Laravel untuk menangani Oracle SEQUENCE seperti NEXTVAL / CURRVAL, agar tidak error setelah migrasi atau saat insert data tanpa auto increment bawaan.

Package ini memungkinkan kamu:

  • Membuat sequence otomatis jika belum ada di database Oracle.
  • Mengambil nilai berikut (NEXTVAL) dari sequence.
  • Integrasi langsung dengan Eloquent model via trait.
  • Gunakan pada project Laravel biasa tanpa konfigurasi tambahan yang rumit.

🧩 Requirements

Komponen Versi Minimum
PHP 8.1
Laravel 9.x, 10.x, 11.x
Database Oracle (tested on 12c, 19c)
PDO Driver pdo_oci atau yajra/laravel-oci8

⚙️ Installation

composer require dayatdev/laravel-oracle-sequence

Setup

//config/app.php
'providers' => [
    DayatDev\OracleSequence\OracleSequenceServiceProvider::class,
],
'aliases' => [
    'OracleSequence' => DayatDev\OracleSequence\Facades\OracleSequence::class,
],

Clear cache & autoload

php artisan config:clear
composer dump-autoload

Usage

  1. Mengambil next value dari sequence
use DayatDev\OracleSequence\Facades\OracleSequence;

$nextVal = OracleSequence::nextval('USER_SEQ');

echo $nextVal;

Jika sequence belum ada, package otomatis akan membuat:

CREATE SEQUENCE USER_SEQ START WITH 1 INCREMENT BY 1 NOCACHE;

2.Menggunakan pada Model Eloquent

namespace App\Models;

use Illuminate\Database\Eloquent\Model;
use DayatDev\OracleSequence\Traits\HasOracleSequence;

class Banner extends Model
{
    use HasOracleSequence;

    protected $table = 'banners';
    protected $primaryKey = 'id';
    public $incrementing = false; // wajib false jika bukan auto increment DB

    // opsional: override nama sequence
    protected string $sequenceName = 'BANNERS_SEQ';
}

3.Mengambil nilai sequence tanpa insert



                                    

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-11-10