Burada benim SQL sözdizimi ile yanlış?

4 Cevap php

SQL yeni. Ben bir BT varlık veritabanı oluşturmak için arıyorum. İşte php ile oluşturulan tablolardan biridir:

mysql_query("CREATE TABLE software(
id VARCHAR(30), 
PRIMARY KEY(id),
software VARCHAR(30),
key VARCHAR(30))")
or die(mysql_error());  
echo "Software Table Created.</br />";

Ben komut dosyası çalıştırdığınızda bu tarayıcı çıktısı:

Eğer SQL sözdizimi bir hata var; 5. satırda ') VARCHAR (30) yakınındaki kullanılacak doğru sözdizimi için MySQL sunucu sürümü karşılık kılavuzunu kontrol

Ben Ubuntu Sunucu 10,04 üzerinde standart LAMP yığınını çalıştırıyorum.

Teşekkür ederim.

4 Cevap

anahtar ayrılmış bir sözcüktür. Eğer gerçekten bu isim gerekiyorsa, tırnak kullanmalısınız:

... `key` varchar(30)

KEY MySQL ayrılmış bir sözcüktür. Bu alan için farklı bir isim seçmek çalışıyor, ya da backtick karakterleri içine alın.

yerine anahtar sw_key deneyin. Belki anahtar ayrılmış bir sözcüktür.

Ben de satırları değiştirmek istiyorsunuz

id VARCHAR(30),
PRIMARY KEY(id),

Karşı

id VARCHAR(30) PRIMARY KEY,

sözdizimi daha standart hale getirmek için