我正在通過PHP只使用命令(不使用phpMyAdmin接口來創建表)創建一個MySQL的命令,我在創建Primary和Foreign時遇到了一些問題鍵。這是我現在的代碼。PHP和MySQL外鍵按預期工作
$conectar = mysql_connect("localhost", "root", "") or die (mysql_error());
//mysql_query("CREATE DATABASE DataBaseTeste") or die(mysql_error());
mysql_select_db("DataBaseTeste") or die(mysql_error());
mysql_query("CREATE TABLE Pergunta("
. "id_Pergunta INT AUTO_INCREMENT,"
. "Descricao TEXT,"
. "Nivel VARCHAR,"
. "PRIMARY KEY(id_Pergunta),"
. "id_Assunto INT)")Or die(mysql_error());
該錯誤消息我得到的是這樣的::
「你
<?php $conectar = mysql_connect("localhost", "root", "") or die (mysql_error()); //mysql_query("CREATE DATABASE DataBaseTeste") or die(mysql_error()); mysql_select_db("DataBaseTeste") or die(mysql_error()); mysql_query("CREATE TABLE Pergunta(" . "id_Pergunta INT AUTO_INCREMENT," . "Descricao TEXT," . "Nivel VARCHAR," . "PRIMARY KEY(id_Pergunta)," . "FOREIGN KEY(id_Assunto) REFERENCES Assunto(id_Assunto))")Or die(mysql_error()); mysql_query("CREATE TABLE Aluno(" . "id_Aluno INT NOT NULL," . "AlunoNome CHAR," . "Grupo CHAR," . "PRIMARY KEY(id_Aluno))")Or die(mysql_error()); mysql_query("CREATE TABLE Assunto(" . "id_Assunto INT," . "Descricao VARCHAR," . "PRIMARY KEY(id_Assunto))")Or die(mysql_error()); mysql_close(); ?>
我也是用這個(沒有外鍵,僅通過插入其他表的ID)嘗試在您的SQL語法中有錯誤;請檢查與您的MySQL服務器版本相對應的手冊,以便在「PRIMARY KEY(id_Pergunta)」附近使用正確的語法...「
這可能是非常愚蠢的東西,但我無法弄清楚。
將mysql_ *函數替換爲mysqli_ * – Phantom
所有函數?因爲我只是放下了一切,它沒有工作... – Xmayro