Saya perhatikan bahwa Visual Studio 2008 menempatkan tanda kurung di sekitar nama kolom dalam sql. Apakah kurung menawarkan keuntungan? Ketika saya memberikan kode T-SQL saya tidak pernah peduli dengan mereka.
Contoh:
Studio visual:
SELECT [column1], [column2] etc...
Cara saya sendiri:
SELECT column1, column2 etc...
sql-server
syntax
Paulj
sumber
sumber
"
), yang juga didukung oleh Microsoft . Jika, Microsoft merasa perlu untuk membatasi segalanya, akan lebih baik menggunakan tanda kutip ganda sebagai gantinya. Tapi saya kira itu akan membuatnya terlalu mudah untuk port ke DBMS lain, dan itu tidak akan pernah terjadi ...Jawaban:
Tanda kurung diperlukan jika Anda menggunakan kata kunci atau karakter khusus dalam nama kolom atau pengidentifikasi. Anda bisa memberi nama kolom
[First Name]
(dengan spasi) - tetapi Anda harus menggunakan tanda kurung setiap kali Anda merujuk ke kolom itu.Alat yang lebih baru menambahkannya di mana-mana untuk berjaga-jaga atau untuk konsistensi.
sumber
select
tetapiselect select from mytable
akan membuat kesalahan sehinggaselect [select] from mytable
membuatnya menjadi permintaan yang valid. Apa pun kata yang penuh warna di studio manajemen SQL Anda, harus dikelilingi oleh tanda kurung jika Anda ingin menggunakannya sebagai nama kolom / tabel / sp / dll. Dalam MySQL, tanda kutip tunggal `` `` akan menjadi setara dengan ini.Mereka berguna jika kolom Anda memiliki nama yang sama dengan kata kunci SQL, atau memiliki spasi di dalamnya.
Contoh:
Oh tidak! Sintaksis salah di dekat kata kunci 'pengguna'. Tapi ini:
Bekerja dengan baik.
sumber
Mereka berguna jika Anda (karena alasan tertentu) menggunakan nama kolom dengan karakter tertentu misalnya.
tidak akan bekerja, tetapi menempatkan tanda kurung di sekitar nama kolom akan berhasil
Singkatnya, ini adalah cara mendeklarasikan nama objek secara eksplisit; kolom, tabel, basis data, pengguna atau server.
sumber
Nama kolom dapat berisi karakter dan kata-kata khusus yang akan membingungkan mesin eksekusi kueri, jadi menempatkan tanda kurung di sekelilingnya setiap saat mencegah hal ini terjadi. Lebih mudah daripada memeriksa masalah dan kemudian menanganinya, saya kira.
sumber
Tanda kurung dapat digunakan ketika nama kolom dicadangkan kata-kata.
Jika Anda membuat pernyataan SQL secara terprogram dari kumpulan nama kolom yang tidak Anda kontrol, maka Anda dapat menghindari masalah dengan selalu menggunakan tanda kurung.
sumber
Terlepas dari mengikuti konvensi penamaan yang menghindari penggunaan kata-kata yang dicadangkan, Microsoft memang menambahkan kata-kata yang dicadangkan baru. Menggunakan tanda kurung memungkinkan kode Anda ditingkatkan ke versi SQL Server baru, tanpa terlebih dahulu perlu mengedit kata-kata Microsoft yang baru saja dicadangkan dari kode klien Anda. Pengeditan itu bisa menjadi perhatian yang signifikan. Ini dapat menyebabkan proyek Anda menjadi pensiun dini ...
Kurung juga bisa bermanfaat saat Anda ingin Ganti Semua dalam skrip. Jika kumpulan Anda berisi variabel bernama @String dan kolom bernama [String], Anda bisa mengganti nama kolom menjadi [NewString], tanpa mengubah nama @String ke @NewString.
sumber
Selama zaman kegelapan SQL pada 1990-an itu adalah praktik yang baik karena desainer SQL berusaha untuk menambahkan setiap kata dalam kamus sebagai kata kunci untuk longsoran tak berujung fitur baru dan mereka menyebutnya konsep SQL3.
Jadi terus kompatibilitas.
Dan saya menemukan bahwa ia memiliki efek samping yang bagus, banyak membantu ketika Anda menggunakan grep dalam ulasan kode dan refactoring.
sumber
Selain itu, beberapa database Sharepoint mengandung tanda hubung dalam namanya. Menggunakan tanda kurung siku dalam Pernyataan SQL memungkinkan nama diuraikan dengan benar.
sumber
Saya percaya itu menambahkan mereka di sana untuk konsistensi ... mereka hanya diperlukan ketika Anda memiliki ruang atau karakter khusus dalam nama kolom, tetapi lebih bersih untuk hanya memasukkan mereka setiap saat ketika IDE menghasilkan SQL.
sumber