저는 PHP를 통해서만 명령을 사용하여 MySQL을 수행하고 있습니다 (phpMyAdmin 인터페이스를 사용하지 않고 테이블 생성). 기본 키와 외부 키를 생성하는 데 약간의 문제가 있습니다. 열쇠. 이것은 현재 코드입니다. "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 구문에 오류가있어서 'PRIMARY KEY (id_Pergunta) ...'근처에서 사용할 올바른 구문을 보려면 MySQL 서버 버전에 해당하는 설명서를 확인하십시오.
아마 뭔가 어리석은 짓 일지 모르지만 그걸 알아낼 수는 없습니다.
mysql_ * 함수를 mysqli_ * – Phantom
ALL 함수로 바꿉니 까? 왜냐하면 나는 모든 것을 다 망쳐 버렸고 일을하지 못했기 때문에 ... – Xmayro