MySQL'de tabloyu yeniden adlandırma


285

Bir tabloyu yeniden adlandırmak MySQL'de çalışmıyor

RENAME TABLE group TO member;

Hata mesajı:

#1064 - You have an error in your SQL syntax; check the manual that corresponds
        to your MySQL server version for the right syntax to use near 'group 
        RENAME TO member' at line 1

Sorgu benim için diğer tablolarda iyi çalışıyor, ama tablo ile değil group.



3
Her iki sql aynıdır. Üye olarak bu 'grup' tablosunu yeniden adlandırın
— user1406062

5
Bu, anahtar kelimeler için all-caps kullanmanın ne kadar anlamsız olduğunu güzel bir şekilde göstermektedir.
— Martin Jambon

8
Hayır. Tümü büyük harf olan anahtar kelimeler okunabilirliği artırır ve beklenen standart stildir.
— fmalina

Yanıtlar:


474

groupMySQL içindeki bir anahtar kelimedir ( GROUP BY'ın bir parçasıdır ), MySQL'e tablo adı olarak yorumlanmasını istediğinizi göstermek için onu backticks ile çevrelemeniz gerekir:

RENAME TABLE `group` TO `member`;

added (yorumlara bakın) - Bunlar tek tırnak değildir.


51
Ve evet, tek bir alıntıya değil, geri işarete ihtiyacınız var Alışkanlıktan tek alıntı yaptım ve hatayı aldım, ama belki bu başka birini 10 saniye kurtaracak
— Paul

NAME gibi bazı anahtar kelimeler hala geri keneler olmadan kullanılabilir. Bu kullanılabilirlik,
— MySQL'den

2
Veya tablolar veya sütunlar için anahtar kelimeler kullanmayın.
— jDub9

1
ANAHTARLAR VE SÜTUNLAR İÇİN ANAHTAR KELİMELER KULLANMAYIN.
— mydoglixu


31

Yeniden adlandırma tablosu için mysql sorgusu

Rename Table old_name TO new_name

Sorgunuzda, MySQL'deki anahtar kelimelerden birini içeren grubu kullandınız. Tablo, alan adı vb. Oluştururken ad için mysql anahtar kelimelerinden kaçının.


23
ALTER TABLE old_table_name RENAME new_table_name;

veya

RENAME TABLE old_table_name TO new_table_name;

19

MySQL'de bir tabloyu yeniden adlandırma:

ALTER TABLE current_name RENAME new_name;

5
SO hoş geldiniz. Kaliteli cevap sağlamak için lütfen bu nasıl yanıtlanacağını okuyun. Sadece kodu göster iyi bir uygulama değildir.
— 17'de

16

Tablo adı değişikliği

RENAME TABLE old_table_name TO new_table_name;

14

grup - MySQL'de ayrılmış bir kelimedir, bu yüzden böyle bir hata görüyorsunuz.

#1064 - You have an error in your SQL syntax; check the manual that corresponds
        to your MySQL server version for the right syntax to use near 'group 
        RENAME TO member' at line 1

Tablo adını ters tırnaklara sarmanız gerekir :

RENAME TABLE `group` TO `member`;

13
ALTER TABLE `group` RENAME `member`

grup anahtar kelime olduğundan, içine yerleştirmeniz gerekir group


9
RENAME TABLE tb1 TO tb2;

tb1 - geçerli tablo adı. tb2 - tablonuzun çağrılmasını istediğiniz ad.


8

Mysql belgelerine göre : " TEMPORARYtabloları yeniden adlandırmak , RENAME TABLEçalışmıyor. ALTER TABLEBunun yerine kullanın ."

Yani bu en taşınabilir yöntem:

ALTER TABLE `old_name` RENAME `new_name`;

6

Bunlardan herhangi birini deneyin

RENAME TABLE `group` TO `member`;

veya

ALTER TABLE `group` RENAME `member`;

2

İçin Mysql 5.6.18kullanım Aşağıdaki komut

ALTER TABLE `old_table` RENAME TO `new_table`

Ayrıca, ".... RENAME TO ..." yakınında bir hata varsa, onay işaretini kaldırmayı deneyin `



1

Kullanabilirsiniz

RENAME TABLE `group` TO `member`;

Tek tırnak işareti (') yerine geri işareti (`) kullanın.


-1

Veritabanı adı verilmeden tablo benim durumumda yeniden adlandırılamaz, tabloyu yeniden adlandırmak için aşağıdaki komutu izledim.

RENAME TABLE current_db.tbl_name TO current_db.tbl_name;

-6

Görünüm> Yeni Sorgu'ya sağ tıklayın

Ve Tür: EXEC sp_rename 'Tablo', 'YeniAd'

Ardından, sayfanın sol üst köşesindeki Çalıştır düğmesini tıklayın.


MySQL Transact SQL değil
— Adam Joseph Looze
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.