我怎样才能在MySQL中删除KEY键?

问题描述 投票:-2回答:1

耶稣受难日晚上!

我解决了一个问题,该问题可以满足基金出勤统计面板的全部工作,我将向您显示我的MySQL请求表的正式信息:

CREATE TABLE `statistic` (
 `date` datetime NOT NULL,
 `ip` text NOT NULL,
 `city` text NOT NULL,
 `region` longtext NOT NULL,
 `country` longtext NOT NULL,
 `ua` text NOT NULL,
 `source` text NOT NULL,
 `page` text NOT NULL,
 `month` int(2) NOT NULL,
 `year` year(4) NOT NULL,
 `week` int(2) NOT NULL,
 `resource` text NOT NULL,
 `id` int(11) NOT NULL AUTO_INCREMENT,
 PRIMARY KEY (`id`),
 KEY `date` (`date`)
) ENGINE=InnoDB AUTO_INCREMENT=12442 DEFAULT CHARSET=utf8

我目前正在测试统计栏本身的“地区”标签的新版本。我想看看我在PHP和Yii1上实现的最新版本,该系统显示了一个根据所选国家和地区显示唯一城市的表格,并且由于收到此错误而无法看到:

未定义索引:城市

并且我在选项卡模板中应用了正确的PHP代码:

<?php
  else if (isset($_GET['country']) && isset($_GET['region'])) {
                $c = trim($_GET['country']);
                $r = trim($_GET['region']);
                $static=Yii::app()->db->CreateCommand();
                $static->selectDistinct("city");
                $static->from("statistic");
                $static->where(array("and","resource='Добрые-Взрослые'","country='". $c ."'","region='". $r ."'"));
                $regions=$static->queryAll();

                foreach ($regions as $list) {

                   echo "<tr>";
                   echo "<td><a href='/static/?static_page=regions&country=". $c ."&region=". $r ."&city=". $list['city'] ."'><img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAACTwAAAk8B95E4kAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAANdSURBVFiF7ZbfT5NnFMc/5+kLpV0KyYhmc44sm6KTQZGi7AIX40YWkznNZvwnDAmtGyRe7Wa/3Cyo2/4J9kucY8Ylu9ALECoUxUxxbnFTowlGdBEKb5+zC2pWXtpKsQk3fi+fc97z/Zwn75Nz4KlWWFJMcngwVquO7kV1J8hqoDoTmgRug/Qbn/vt6OajEyUFCA/FNiP2c0Xallj2VNrQNd4UTz4RwPbfPnLuhqa+BNoBA9wBjiv6s7EyYRz3DoB1ndX4qFVlJ7AHWAVYRXs2XrvR2buvN100QGS4q8ol1ZvpegYlng6mPh2v++bfQtAbznaGyivmDgpEAT/IqYA7t2/w9WP3lwywbqLdH5zy/QrSCvxlxe6+GDkyVsjYq7rzsbDP6o/AS8CZh1Vu29X1x1LePJPr42fuOUcz5v/gutuKNQcYb4onrZU3gBvAtuCUE8+Vt+gGwkPRrSoMANOi0prcEh8p1jxb9YkDEVF7BqgAbR5r7jmfHV90A2r4GBBFDj/OvGE4qg3DUS2UcyFyOIFoHBAwn3jjCwDCg7FalLeAydkZ54tChYtRYC59CLgL+nZdIrouL4A6uhdAlO8utx56UCqAzAv4AcCovJ8XAMsOAEVOlsr8kUQ4OW9o38wPINQApI1eKjWAWnsJQJGa7HPHk/ccgDtddttboNDPlis21ty94IUF0vbWtGNQeD773PsKBMAfsjaf2XJ1zw1oxmABmPcGbgHrjZ1dAyyYaN6O4P/Oc8W88vtTazL93sw+997A3wDWdV59XMFiJcZsAhD0egEA7QdQdE+pAVTna1qV/rwAkjZ9ACK8u+FsZ6hU5i0D7ZUg7wBYw4m8AMmW+BVBTwPV5RXuh6UCmC7zdQLPovwyHum+mh1b9PM0nutotEYSwEyJh1G5FdvknayLhtHo1p5REY4AQRXtaxhoX7tc89fOxV4UtceBAEh3rrGecx9INlV9gHICWIvjjDQOdWwv1rwh0bHDGB0BXkC0byxS2ZUrb+krGfLVbDr12e8tX08WMt44uL+6zFd2UJD9LHcle6QcS+kDQfoQ+z2uuTj1sPI6QFXwfo0a6hF9D9gFhHjSpTRbK7aWe1U/FH1ZhF0KbQKvML9wAvwJ/AFyWlV/urCl+1oxdZ9qRfUfHY1asGPwJj4AAAAASUVORK5CYII=' /></a></td>";
                   echo "<td>". $list['city'] ."</td>";
                   $static=Yii::app()->db->CreateCommand('SELECT  COUNT(DISTINCT ip) FROM statistic WHERE resource="Добрые-Взрослые" AND city="'. $list['city'] .'" AND region="'. $r .'" AND country="'. $c .'"');
                   $count=$static->queryScalar();
                   echo "<td>". $count ."</td>";
                   echo "</tr>";
                }
              }
?>

该算法本身负责根据HTTP GET请求选择的国家和地区显示唯一的城市

  1. 然后我尝试在MySQL Terminal中输入命令:
SHOW CREATE TABLE statistic;

2。检查其他表没有简单的键,事实证明这阻止了新版本的选项卡的完整操作,这是这段内容:

KEY `date` (`date`);

3。通过在Internet上发布如何使用DROP KEY删除列中的密钥,我尝试了一些在需要解决问题的列中使用DROP KEY的选项,并且MySQL考虑了选项可接受的语法错误。

伙计们,请告诉我如何通过DROP正确删除“ city”列中使用的KEY键的类型,以避免出现无法接受的索引错误?

谢谢您!

My question source

My question translated in English on Bing Translate and been editing!

php mysql yii
1个回答
0
投票

$list是对象,所以您应该使用此代码:

$list->city
© www.soinside.com 2019 - 2024. All rights reserved.