2013-10-01 181 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')'是否给你任何记录?你能告诉我们你桌子的桌子结构吗? –