Php 如何使用文本类型字段在MySQL上获得快速性能?

Php 如何使用文本类型字段在MySQL上获得快速性能?,php,mysql,database,performance,google-maps,Php,Mysql,Database,Performance,Google Maps,我正在做一个Gmap申请,有一个表格和一个表格。 我有一些性能问题。 以下是我所拥有的 表格:我的路线 我的表格: 当我保存数据时,它会保存,但保存时间太长,并且在获取数据以进行修改时也会如此 我在WAMP服务器(PHP)上有以下设置 有谁能帮我处理这个问题吗? 为使我的GMap表格取得良好的成绩,有哪些改变或建议 欢迎光临,建议我建议您使用十进制数据类型存储cordinate,并可能将数据拆分为两个表,例如- CREATE TABLE main ( id int(11) NOT NULL

我正在做一个Gmap申请,有一个表格和一个表格。 我有一些性能问题。 以下是我所拥有的

表格:我的路线

我的表格:

当我保存数据时,它会保存,但保存时间太长,并且在获取数据以进行修改时也会如此

我在WAMP服务器(PHP)上有以下设置

有谁能帮我处理这个问题吗? 为使我的GMap表格取得良好的成绩,有哪些改变或建议


欢迎光临,建议

我建议您使用十进制数据类型存储cordinate,并可能将数据拆分为两个表,例如-

CREATE TABLE main (
  id int(11) NOT NULL AUTO_INCREMENT,
  name varchar(255) DEFAULT NULL,
  PRIMARY KEY (id)
)
ENGINE = INNODB;

CREATE TABLE coordinates (
  id int(11) NOT NULL AUTO_INCREMENT,
  id_fk int(11) NOT NULL,
  latitude decimal(10, 8) DEFAULT NULL,
  longitude decimal(10, 8) DEFAULT NULL,
  PRIMARY KEY (id),
  CONSTRAINT FK_coordinates_main_id FOREIGN KEY (id_fk)
  REFERENCES main (id) ON DELETE RESTRICT ON UPDATE RESTRICT
)
ENGINE = INNODB;

存储这些坐标的目的是什么?哪个MySQL版本?定义“太多时间”我有像你一样的东西,两张桌子分开。但这是可行的,因为为此我们需要进行额外的处理,以便从联接表中获得相同的结果,并通过SQL查询进行put。我们可以用TEXT/MEDIUMTEXT数据类型做这样的事情吗?我们无法从上述数据类型中获得好处?您可以使用一个表,但正如您所看到的-
name
值将重复多次。那是因为我分割了数据。我只使用了两个表来规范化数据。
<form action="save.php">
<div id="map">GMap Here</div>
<input type="hidden" name="id" />
<input type="text" name="name" />
<input type="hidden" name="coordinates" />
<input type="submit" name="btnsave"/>
</form>
"46.963530000000006,7.950190000000001;46.96359,7.950360000000001;46.963640000000005,7.95049;46.963680000000004,7.95063;46.96374,7.9507900000000005;46.96378000000001,7.950950000000001;46.963800000000006,7.95105;46.96381,7.95117;46.96381,7.951280000000001;46.96378000000001,7.951480000000001;46.96374,7.951650000000001;46.96367,7.9519400000000005;46.963640000000005,7.952100000000001;46.96360000000001,7.952370000000001;46.96358,7.952580000000001;46.96356,7.95272;46.963550000000005,7.952870000000001;46.96356,7.952960000000001;46.96358,7.953050000000001;"
max_allowed_packet = 1024M
max_execution_time = 180
post_max_size = 128M
CREATE TABLE main (
  id int(11) NOT NULL AUTO_INCREMENT,
  name varchar(255) DEFAULT NULL,
  PRIMARY KEY (id)
)
ENGINE = INNODB;

CREATE TABLE coordinates (
  id int(11) NOT NULL AUTO_INCREMENT,
  id_fk int(11) NOT NULL,
  latitude decimal(10, 8) DEFAULT NULL,
  longitude decimal(10, 8) DEFAULT NULL,
  PRIMARY KEY (id),
  CONSTRAINT FK_coordinates_main_id FOREIGN KEY (id_fk)
  REFERENCES main (id) ON DELETE RESTRICT ON UPDATE RESTRICT
)
ENGINE = INNODB;