Mysql
 sql >> Database >  >> RDS >> Mysql

Trasferisci le coordinate di Google Map nel database di MySQL

Bene, ora, ecco la soluzione di database per te:

I percorsi della tabella memorizzeranno i percorsi che hai, dal tuo array.

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;

I percorsi della tabella memorizzeranno il tuo nome utente/percorso (qualunque cosa tu voglia) nel campo pName, punto di partenza nei campi pStartLat/pStartLng, pAverageSpeed ​​è ovviamente la velocità media (non so se lo vuoi, per ogni evenienza) e pID è l'identificatore che utilizzerai con un'altra tabella:

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;

Questa tabella ti consentirà di memorizzare le coordinate, con velocità per ciascuna di esse.

Ora, supponiamo che tu voglia mostrare il percorso chiamato "TestOne".

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

SELECT * FROM paths WHERE pName = "TestOne"

Ora hai ID, nome, coordinate del punto di partenza e velocità media nella tabella (mysql_fetch_assoc sarebbe fantastico).

Quindi, utilizzando l'ID puoi recuperare il resto delle coordinate:

SELECT * FROM coords WHERE cPath = ID

E ora, usando e. g. while loop, puoi recuperare tutte le coordinate in un array.

Ovviamente prima devi memorizzare quei dati usando INSERT INTO construction o simili :-)