sql >> Databáze >  >> RDS >> Mysql

Přeneste souřadnice mapy Google do databáze mysql

Dobře, tady je pro vás databázové řešení:

Cesty tabulky budou ukládat cesty, které máte, z vašeho pole.

CREATE TABLE `gmap`.`paths` (
  `pID` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  `pName` VARCHAR(75) NOT NULL,
  `pStartLat` VARCHAR(25) NOT NULL,
  `pStartLng` VARCHAR(25) NOT NULL,
  `pAverageSpeed` FLOAT NOT NULL,
  PRIMARY KEY (`pID`)
)
ENGINE = MyISAM;

Cesty tabulky budou ukládat vaše jméno uživatele/cesty (jakékoli chcete) do pole pName, výchozí bod do polí pStartLat/pStartLng, pAverageSpeed ​​je samozřejmě průměrná rychlost (nevím, jestli to chcete, jen pro případ) a pID je identifikátor kterou použijete s jinou tabulkou:

CREATE TABLE `gmap`.`coords` (
  `cID` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  `cLat` VARCHAR(25) NOT NULL,
  `cLng` VARCHAR(25) NOT NULL,
  `cSpeed` FLOAT NOT NULL,
  `cPath` INTEGER UNSIGNED NOT NULL,
  PRIMARY KEY (`cID`)
)
ENGINE = MyISAM;

Tato tabulka vám umožní uložit souřadnice - s rychlostí pro každou z nich.

Nyní řekněme, že chcete zobrazit cestu s názvem 'TestOne'.

// Connect to the database - I assume you can do that
// and retrieve data

SELECT * FROM paths WHERE pName = "TestOne"

Nyní máte ID, jméno, souřadnice výchozího bodu a průměrnou rychlost v tabulce (na to by se skvěle hodilo mysql_fetch_assoc).

Poté pomocí ID můžete získat zbytek souřadnic:

SELECT * FROM coords WHERE cPath = ID

A nyní pomocí e. G. while, můžete načíst všechny souřadnice do pole.

Samozřejmě nejprve musíte tato data uložit pomocí konstrukce INSERT INTO nebo podobně :-)



  1. Vyladění operací vstupu/výstupu (I/O) pro PostgreSQL

  2. Jak získat *všechno* zpět z uložené procedury pomocí JDBC

  3. Alias ​​sloupce v klauzuli WHERE

  4. Vkládání dat blob v Javě pomocí PreparedStatement