nkhani

Momwe mungasinthire Laravel kuti agwiritse ntchito ma database angapo mu Project yanu

Nthawi zambiri pulojekiti yokonza mapulogalamu imaphatikizapo kugwiritsa ntchito Database yosungiramo deta mwadongosolo.

Pama projekiti apadera pangafunike kugwiritsa ntchito ma database angapo.

Ndi Laravel, kuti tigwiritse ntchito nkhokwe zingapo, tiyenera kukonza chimango komanso makamaka fayilo yolumikizira.

Tiyeni tiwone momwe mungasinthire Laravel kuti agwiritse ntchito ma database angapo.

Nthawi yowerengera: 4 minuti

file database.php in config Directory

Fayiloyi ili m'ndandanda config za ntchito yanu ya Laravel.

Mu fayilo database.php ndizotheka defitsegulani maulalo angapo a database. Kulumikizana kulikonse kuyenera kukhala defiyopangidwa ngati array. Gululi liyenera kukhala ndi izi:

  • driver: woyendetsa database woti agwiritse ntchito;
  • host: dzina host kapena adilesi IP pa seva ya database;
  • port: nambala ya doko la seva ya database;
  • database: dzina la database;
  • username: dzina lolowera kuti mulumikizidwe ku database;
  • password: mawu achinsinsi olumikizira ku database;

Mwachitsanzo, malamulo otsatirawa defiPali zolumikizira ziwiri za database, imodzi ya MySQL ndi ina ya PostgreSQL:

'connections' => [
        'sqlite' => [
            'driver' => 'sqlite',
            'url' => env('DATABASE_URL'),
            'database' => env('DB_DATABASE', database_path('database.sqlite')),
            'prefix' => '',
            'foreign_key_constraints' => env('DB_FOREIGN_KEYS', true),
        ],

        'mysql' => [
            'driver' => 'mysql',
            'url' => env('DATABASE_URL'),
            'host' => env('DB_HOST', '127.0.0.1'),
            'port' => env('DB_PORT', '3306'),
            'database' => env('DB_DATABASE', 'forge'),
            'username' => env('DB_USERNAME', 'forge'),
            'password' => env('DB_PASSWORD', ''),
            'unix_socket' => env('DB_SOCKET', ''),
            'charset' => 'utf8mb4',
            'collation' => 'utf8mb4_unicode_ci',
            'prefix' => '',
            'prefix_indexes' => true,
            'strict' => true,
            'engine' => null,
            'options' => extension_loaded('pdo_mysql') ? array_filter([
    PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
            ]) : [],
        ],

        'pgsql' => [
            'driver' => 'pgsql',
            'url' => env('DATABASE_URL'),
            'host' => env('DB_HOST', '127.0.0.1'),
            'port' => env('DB_PORT', '5432'),
            'database' => env('DB_DATABASE', 'forge'),
            'username' => env('DB_USERNAME', 'forge'),
            'password' => env('DB_PASSWORD', ''),
            'charset' => 'utf8',
            'prefix' => '',
            'prefix_indexes' => true,
            'schema' => 'public',
            'sslmode' => 'prefer',
        ],

Momwe mungalumikizire ku DB

Pambuyo pake defiMukakhala ndi malumikizano a database, mutha kuwagwiritsa ntchito mu code yanu Laravel. Kuti muchite izi, mutha kugwiritsa ntchito facade za database. Apo facade database imapereka mawonekedwe ogwirizana kuti azilumikizana ndi ma database.

Kuti musinthe pakati pa kulumikizana kwa database, mutha kugwiritsa ntchito njirayo Connection() Della facade Zosungira. Njira Connection() amatenga dzina la kugwirizana kwa database ngati mkangano.

Mwachitsanzo, nambala yotsatirayi imachokera ku mysql DB kupita ku pgsql DB:

Nkhani zatsopano
Musaphonye nkhani zofunika kwambiri zazatsopano. Lowani kuti muwalandire ndi imelo.
use Illuminate\Support\Facades\DB;

DB::connection('pgsql');

Mukangosinthira ku kulumikizana kwa database, mutha kuyigwiritsa ntchito kufunsa ndikulumikizana ndi database.

Ubwino wogwiritsa ntchito ma database angapo ku Laravel

Pali zabwino zambiri zogwiritsira ntchito nkhokwe zingapo ku Laravel, kuphatikiza:

  • Kuchita bwino: Kugwiritsa ntchito nkhokwe zingapo kumatha kusintha magwiridwe antchito polekanitsa deta yamitundu yosiyanasiyana. Mwachitsanzo, mutha kusunga deta ya ogwiritsa ntchito munkhokwe imodzi ndi zomwe zili patsamba lina.
  • Chitetezo chowonjezereka: Kugwiritsa ntchito nkhokwe zingapo kumatha kupititsa patsogolo chitetezo cha mapulogalamu polekanitsa deta yamitundu yosiyanasiyana. Mwachitsanzo, mutha kusunga deta yachinsinsi pankhokwe imodzi ndi data yocheperako munkhokwe ina.
  • Kuchulukirachulukira: Kugwiritsa ntchito ma database angapo kungapangitse kuti pulogalamu yanu ikhale yovuta kwambiri pokulolani kugawa deta yanu pamaseva angapo.

Njira zabwino zogwiritsira ntchito ma database angapo ku Laravel

Nawa njira zabwino zogwiritsira ntchito nkhokwe zingapo ku Laravel:

  • Gwiritsani ntchito mayina ochezeka pamalumikizidwe ankhokwe: Izi zipangitsa kuti zikhale zosavuta kuzindikira ndi kuyang'anira maulalo a database.
  • Gwiritsani ntchito njirayo Connection() kupita kumodzi DB kwa wina - izi zidzakuthandizani kupewa kuthamanga mwangozi funso Sul Nawonso achichepere cholakwika.
  • Gwiritsani ntchito makina osamuka a database kuti muyang'anire schemas yanu ya database - izi zikuthandizani kuti schemas schemas yanu ya database ikhale yolumikizana pazonse zanu. Nawonso achichepere.

Pomaliza

Kugwiritsa ntchito nkhokwe zingapo ku Laravel kungakhale njira yabwino yopititsira patsogolo magwiridwe antchito, chitetezo, komanso kuchuluka kwa ntchito yanu. Potsatira njira zabwino zomwe zafotokozedwa m'nkhaniyi, mutha kugwiritsa ntchito nkhokwe zingapo ku Laravel bwino.

Zowerenga Zogwirizana

Ercole Palmeri

Nkhani zatsopano
Musaphonye nkhani zofunika kwambiri zazatsopano. Lowani kuti muwalandire ndi imelo.

Zaka zatsopano

Malipiro Apaintaneti: Nayi Momwe Ntchito Zotsatsira Amapangira Kuti Mulipire Kwamuyaya

Mamiliyoni a anthu amalipira ntchito zotsatsira, kulipira ndalama zolembetsa pamwezi. Ndi malingaliro odziwika kuti…

29 April 2024

Veeam ili ndi chithandizo chokwanira kwambiri cha ransomware, kuyambira pakutetezedwa mpaka kuyankha ndi kuchira

Coveware yolembedwa ndi Veeam ipitilizabe kuyankha pazochitika za cyber extortion. Coveware ipereka luso lazamalamulo ndi kukonzanso…

23 April 2024

Green ndi Digital Revolution: Momwe Kukonzekera Kukonzekera Kusinthira Makampani Amafuta & Gasi

Kukonza zolosera kukusintha gawo lamafuta & gasi, ndi njira yaukadaulo komanso yolimbikira pakuwongolera mbewu.…

22 April 2024

Woyang'anira antitrust ku UK akukweza alamu ya BigTech pa GenAI

Bungwe la UK CMA lapereka chenjezo lokhudza machitidwe a Big Tech pamsika wanzeru zopangira. Apo…

18 April 2024