2011-03-05 184 views
0

使用MySQL我需要一個x,y座標的列表(可能是長列表)。我應該怎麼做呢?我需要一個未知數量的座標字段(或幾個字段)如何去做這件事?

道歉爲這個問題驚人的含糊量!我不想解釋我的整個項目,但我想有更多的解釋是爲了讓這個任何意義上的問題。

好的,我正在爲客戶端做一個地圖/方向Web應用程序(不,我已經查看了Google Maps API,但我需要映射他們的建築物/校園,所以我認爲不適用)。所以我現在的計劃是創建一些PHP腳本,這些腳本可以通過dijkstra的算法運行(我故意將這種情況減少了很多,因爲我不想解釋整個項目),但是由於該算法基於使用圖表我將有一個包含各種Coords的Edge表格,以便在圖像中知道如何繪製線條。這對你們現在是否更有意義?再次表示歉意,我原本應該多加註意一些問題。

+0

你的數據是什麼或者可能是什麼樣的? – 2011-03-05 00:23:02

+0

我假設你的問題不僅僅是「創建一個有兩個字段的表」。你能詳細說明嗎? – Seth 2011-03-05 00:23:47

+0

好吧我正在考慮做我自己的映射/方向web應用程序的事情。我不會詳細討論整個項目的細節,但是我的Dijkstra算法圖的每條邊的長話短說,我需要存儲一些座標,以便我將繪製線條的一些樞軸點穿過我的地圖圖片。所以不,我沒有創建一個有兩個字段的表格,這是我的問題的一小部分,但我不想把整個項目當成一個問題哈哈,如果聽起來有點模糊,那麼很抱歉。 – jphenow 2011-03-05 18:56:46

回答

1

使得很多的假設,因爲你的問題是模糊的...

使用兩次與外鍵的表,這是對一個模型一對多的關係

create table table1 (
id int 
--more columns presumably 
) 
create table coordinates (
id int, 
table_id int --foreign key with table1, 
x int, 
y int 
) 
+0

我很抱歉,我爲這個問題添加了更多的上下文,但是你的回答應該與我的問題一起工作,當我寫這篇文章的時候,這個問題會遲到,所以我的大腦可能會越來越少。感謝你的回答。 – jphenow 2011-03-05 19:03:32

0

MySQL是標準的做法一個存儲數據的數據庫。您可以創建一個XCoord和YXoord字段的表格,它可以輕鬆處理數百萬行。

CREATE TABLE Coordinates(id int(11) NOT NULL Auto_increment, 
    X double NOT NULL, 
    Y double NOT NULL, 
PRIMARY KEY (id) 
) 
相關問題