Ada beberapa alasan.
- Keamanan- Jika pengguna memiliki akses langsung, mereka bisa mendapatkan apa saja dari database Anda. Plus mereka akan memiliki kata sandi ke dalam database Anda. Akibatnya, jika server SQL yang Anda gunakan memiliki kelemahan, maka mereka dapat mengeksploitasinya. Juga, jika izin Anda salah diatur, itu bisa menghapus database Anda.
- Kecepatan- Jika pengguna sering menggunakan kueri besar, hal itu dapat membuat sistem Anda macet dengan cepat dan tidak perlu. Jika Anda menggunakan antarmuka web, Anda dapat membatasinya.
- Aksesibilitas- Kueri web didukung oleh hampir semua hal. Ini membutuhkan klien khusus untuk mengakses database SQL secara langsung.
Tetapi jika Anda mempercayai pengguna Anda sepenuhnya, memiliki perpustakaan/driver yang tepat, maka Anda dapat mengizinkan kueri langsung, dan bahkan mungkin sedikit lebih cepat.