Jika saya hanya ingin mengganti nama kolom (tidak mengubah jenis atau batasannya, hanya namanya) dalam database SQL menggunakan SQL, bagaimana cara melakukannya? Atau tidak mungkin?
Ini untuk database apa pun yang mengklaim mendukung SQL, saya hanya mencari kueri khusus SQL yang akan berfungsi terlepas dari implementasi database yang sebenarnya.
sql
sql-server
database
rename
MetroidFan2002
sumber
sumber
Jawaban:
Di PostgreSQL (dan banyak RDBMS lainnya), Anda dapat melakukannya dengan
ALTER TABLE
pernyataan biasa :sumber
sp_rename
sesuai jawaban Galwegian: stackoverflow.com/a/174586/834431Khusus untuk SQL Server, gunakan
sp_rename
sumber
Di MySQL, sintaksnya adalah
ALTER TABLE ... CHANGE
:Perhatikan bahwa Anda tidak bisa begitu saja mengganti nama dan membiarkan tipe dan batasan apa adanya; Anda harus mengetik ulang tipe data dan batasan setelah nama kolom baru.
sumber
RENAME
sintaks. Ubah nama kolom di MySQLSayangnya, untuk solusi database independen, Anda perlu mengetahui segalanya tentang kolom. Jika digunakan di tabel lain sebagai kunci asing, mereka juga perlu dimodifikasi.
Untuk kasus yang paling sederhana (tanpa batasan, pemicu, indeks atau kunci), ini akan mengambil 3 baris di atas. Untuk hal yang lebih rumit, ini bisa menjadi sangat berantakan saat Anda mengisi bagian yang hilang.
Namun, seperti yang disebutkan di atas, ada metode khusus database yang lebih sederhana jika Anda mengetahui database mana yang perlu diubah sebelumnya.
sumber
Saya rasa ini adalah cara termudah untuk mengubah nama kolom.
sumber
Di Informix, Anda dapat menggunakan:
Ini diterapkan sebelum standar SQL mengatasi masalah - jika ditangani dalam standar SQL. Salinan saya atas standar SQL 9075: 2003 tidak menunjukkannya sebagai standar (antara lain, RENAME bukan salah satu kata kunci). Saya tidak tahu apakah itu sebenarnya dalam SQL 9075: 2008.
sumber
RENAME COLUMN TableName.OldName TO NewName;
www-01.ibm.com/support/knowledgecenter/SSGU8G_11.50.0/…Di sql server Anda dapat menggunakan
atau
sumber
Anda dapat menggunakan perintah berikut untuk mengganti nama kolom dari tabel mana pun di SQL Server:
sumber
ALTER TABLE adalah SQL standar. Tapi itu tidak sepenuhnya diterapkan di banyak sistem database.
sumber
Standar akan
ALTER TABLE
, tetapi itu tidak selalu didukung oleh setiap DBMS yang mungkin Anda temui, jadi jika Anda mencari sintaks yang mencakup semua, Anda mungkin kurang beruntung.sumber
Alternatifnya
SQL
, Anda dapat melakukan ini di Microsoft SQL Server Management Studio, dari Panel Desain tabel.Cara Pertama
Klik dua kali secara perlahan pada kolom tersebut. Nama kolom akan menjadi kotak teks yang dapat diedit.
Cara Kedua
Cara Ketiga
Tabel >> Klik Kanan >> Desain
sumber