2013-10-01 5 views
0

구문에 영향을 미칠 수있는 모든 사항을 시도했지만 아무 효과가 없습니다. 이 스크립트를 실행하여 pm_Permissions라는 테이블에 항목을 추가하려고합니다. 그러나 다시 실행하면 항목이 이미 있으므로 다시 추가하지 않아도됩니다.실행시 SQL 구문 오류가 발생했습니다.

IF NOT EXISTS (SELECT 1 FROM pm_Permissions WHERE permission_tag = 'dbcorrectstructure') 
BEGIN 

    LOCK TABLES `pm_Permissions` WRITE; 
    /*!40000 ALTER TABLE `pm_Permissions` DISABLE KEYS */; 
    INSERT INTO `pm_Permissions` VALUES (NULL,'dbCorrectStructure', 'Makes sure all the correct tables, columns and entries exist','dbcorrectstructure','$sourcedir/administration.lib.php','dbCorrectStructure','Administration',0); 
    /*!40000 ALTER TABLE `pm_Permissions` ENABLE KEYS */; 
    UNLOCK TABLES; 

END 

미리 감사드립니다.

답변

0
(SELECT 1 FROM pm_Permissions WHERE permission_tag = 'dbcorrectstructure') 
다음

permission_tag = 'dbcorrectstructure'하지만 당신이 'dbCorrectStructure'입니다 삽입하는 ...

는이 (SELECT 1 FROM pm_Permissions WHERE permission_tag = 'dbCorrectStructure')

같이 확인해야합니다 .. 그것은 올바른? 난 당신이 또한 대소 문자와 일치해야한다고 생각인가
+0

아니요, permission_tag는 테이블의 네 번째 열이며 대문자를 포함하지 않습니다. – user2834317

+0

@ user2834317 ohh 죄송합니다. bdw'(SELECT 1 FROM pm_Permissions where permission_tag = 'dbcorrectstructure')가 어떤 기록을 남기고 있는지 몰랐습니까? 우리 테이블 구조를 보여줄 수 있니? –

관련 문제