2014-02-24 51 views
-4

我試圖將數據插入zone_sig插入錯誤代碼1241的操作數應包含1列(S)

INSERT INTO zone_sig values (0,0,0,0,'24','Siliana','Kesra','2459',(0.95830721023,0.03643552658),'Région du Nord-Ouest',0); 

,但我得到的錯誤:

error code 1241. operand should contain 1 column(s)

表模式:

zone_sig (
    ID int(11) NOT NULL AUTO_INCREMENT, 
    ADM_IDE int(11) DEFAULT NULL, 
    SURFACE double DEFAULT NULL, 
    PERIMETRE double DEFAULT NULL, 
    ADM_COD varchar(255) DEFAULT NULL, 
    ADM_GOV varchar(255) DEFAULT NULL, 
    ADM_DEL varchar(255) DEFAULT NULL, 
    CODE_INS varchar(255) DEFAULT NULL, 
    ogc_geom geometry DEFAULT NULL, 
    NOM_ZONE varchar(250) DEFAULT NULL, 
    NIVEAU int(11) DEFAULT NULL, 
    PRIMARY KEY (ID) 
) ENGINE=InnoDB AUTO_INCREMENT=269 DEFAULT CHARSET=latin1; 
+1

太糟糕了,你不試圖找出你自己爲什麼發生這種情況。谷歌對此只有5億的結果。 –

+0

'zone_sig'的模式是什麼樣的? '(0.95830721023,0.03643552658)'應該代表什麼? –

+0

zone_sig( ID INT(11)NOT NULL AUTO_INCREMENT, ADM_IDE INT(11)DEFAULT NULL, SURFACE雙DEFAULT NULL, PERIMETRE雙DEFAULT NULL, ADM_COD VARCHAR(255)DEFAULT NULL, ADM_GOV VARCHAR(255)DEFAULT NULL, ADM_DEL VARCHAR(255)DEFAULT NULL, CODE_INS VARCHAR(255)DEFAULT NULL, ogc_geom幾何DEFAULT NULL, NOM_ZONE VARCHAR(250)DEFAULT NULL, NIVEAU INT(11)DEFAULT NULL, PRIMARY KEY(ID) ENGINEER = InnoDB AUTO_INCREMENT = 269 DEFAULT CHARSET = latin1; – ABYR

回答

0

設置geometry字段時,不能直接在查詢中使用(0.95830721023,0.03643552658)。 MySQL不知道如何使用它。

您需要在這裏使用Point函數。

INSERT INTO zone_sig values (0,0,0,0,'24','Siliana','Kesra','2459',Point(0.95830721023,0.03643552658),'Région du Nord-Ouest',0); 

DEMO:http://sqlfiddle.com/#!2/7128c8/1

文檔:http://dev.mysql.com/doc/refman/5.1/en/creating-spatial-values.html(見12.17.4.2.3)

+0

非常感謝你:) – ABYR

+0

不客氣:) –

相關問題