1) सबसे पहले, आपको अपने डेटाबेस के pgsql ऐरे में दिए गए विकल्पों में दिए गए PDO विकल्प को बदलना होगा। नीचे दिए गए तरीके से सही तरीका है।
'pgsql' => [
'driver' => 'pgsql',
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '5434'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'prefix' => '',
'schema' => 'public',
'sslmode' => 'prefer',
'options' => [
PDO::ATTR_EMULATE_PREPARES => true
]
]
2) दूसरा, और सबसे महत्वपूर्ण बात यह सुनिश्चित करना है कि आप अपने Database.php में कनेक्ट करने का प्रयास करने वाले प्रत्येक डेटाबेस कनेक्शन के साथ "ATTR_EMULATE_PREPARES" को "true" पर सेट करें। फ़ाइल।
उदाहरण के लिए,
'test' => [
'driver' => 'pgsql',
'host' => env('test', '127.0.0.1'),
'port' => env('test', '5434'),
'database' => env('DB_TEST_DATABASE', 'test'),
'username' => env('DB_USERNAME', 'test'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'prefix' => '',
'schema' => 'public',
'sslmode' => 'prefer',
'options' => [
PDO::ATTR_EMULATE_PREPARES => true
]
],
'test1' => [
'driver' => 'pgsql',
'host' => env('test1', '127.0.0.1'),
'port' => env('test1', '5434'),
'database' => env('DB_TEST1_DATABASE', 'test1'),
'username' => env('DB_USERNAME', 'test'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'prefix' => '',
'schema' => 'public',
'sslmode' => 'prefer',
'options' => [
PDO::ATTR_EMULATE_PREPARES => true
]
]
कृपया सुनिश्चित करें कि आपके द्वारा अपने आवेदन में किए गए प्रत्येक डेटाबेस कनेक्शन के लिए "ATTR_EMULATE_PREPARES" का उपयोग सही है, अपनी टिप्पणियों में आप केवल "pgsql" के साथ संबंध बनाते हैं, जो केवल sql कनेक्शन को पोस्टग्रेज करने पर जोर देता है, न कि उस डेटाबेस के साथ जो आपका एप्लिकेशन संचार करता है पोस्टग्रेज में है।
आशा है कि यह आपकी क्वेरी को हल करने में आपकी मदद करेगा। आनंद लें!!!