Hari ini saya nemuin error di webapp di VM saya "Unable to find V_ACM_CONFIG", nah lhoo..
Padahal di DB itu udah ada view dengan nama V_ACM_CONFIG, cuma pake lower case, v_acm_config.
Setelah diselidiki, ternyata semua DB pake collation SQL_Latin1_General_CP1_CS_AS. Di DB yang saya akses dari webapp itu, format penulisan nama table, field dan view pake lower case semua, sedangkan yang di akses dari webapp itu, nama view-nya pake upper case.
Kalo query langsung mah gampnag, tinggal pas JOIN tambahin COLLATE DATABASE_DEFAULT, hasilnya bisa keluar, lah kalo webapp product orang??!!
Cari-cari artikel, buat ubah dari CS ke CI perlu perjuangan, buat store procedure lah, cek sono sini lah, ternyata ga perlu begituan.
How to change DB Collation from SQL_Latin1_General_CP1_CS_AS to SQL_Latin1_General_CP1_CI_AS
- Buka SQL Server Management Studio (SSMS), login 'sa'
- Jalanin query ini buat ubah jadi Single User mode,
- Restart SSMS, login 'sa'
- Pastiin ga ada aplikasi lain yang akses DB itu, dan pastiin juga DB yang mau dirubah collation-nya, ada tulisan 'Single User'
- Klik kanan DB > Properties > Option
- Ubah collation dari SQL_Latin1_General_CP1_CI_AS jadi SQL_Latin1_General_CP1_CI_AS
- Jalanin query ini buat ubah jadi Multi User mode, biar bisa diakses normal lagi
And tadaaa, webapp saya bisa akses view V_ACM_CONFIG,
Oke that's it cara ubahnya, semoga bermanfaat!
0 comments:
Post a Comment