小编Cod*_*ird的帖子

PDOStatement :: execute():SQLSTATE [HY093]:参数号无效:未定义参数

下面是我的代码,我无法解决此错误.任何帮助表示赞赏.我正在尝试更新数据库中的表.

    public function updateUnit($params){
    $user = 'monil';
    $password = 'Masters123';   
    $dbh = new \PDO('mysql:host=127.0.0.1;dbname=tcsdb', $user, $password);

    $task=array(':UnitCode'=>$params['UnitCode'],':UnitDescription'=>$params['UnitDescription']    ,
      ':UnitName'=>$params['UnitName'], ':UnitID'=>$params['UnitID']);
    echo $params['UnitID'];

    $sth = $dbh->prepare('UPDATE unit SET UnitCode = :UnitCode,'
        . 'UnitDescription = :UnitDescription,UnitName = :UnitName WHERE UnitId=:UnitId');
    $sth->execute($task); 

    return true;
}
Run Code Online (Sandbox Code Playgroud)

php pdo

7
推荐指数
1
解决办法
3万
查看次数

ERROR 1114(HY000):表'XXX'已满

我知道之前曾问过这个问题,但似乎没有任何帮助.

我在2 - 3天前遇到过这个问题,询问服务器支持,他们告诉我,我必须将mysql从/ var移动到/ home所有的磁盘空间,这就是我所做的.然后我运行我的插入,一切都很顺利,直到今天我完成数据的插入,我想在我的表中添加索引,当我在2分钟后运行ALTER查询时,我得到了这个错误.

我在my.cnf中放了innodb_file_per_table = 1并重新启动了mysql,但没有用.

目前我们正在另一台服务器上运行,其中所有数据都很好,并且mysql运行良好,数据库表大约250GB,我检查了该服务器上比较2台服务器的设置,似乎没有什么不同我.

编辑: 显示表状态像'whois_main'

Name        Engine  Version Row_format  Rows        Avg_row_length  Data_length     Max_data_length     Index_length    Data_free   Auto_increment  Create_time             Update_time     Check_time  Collation         Checksum  Create_options  Comment     
whois_main  InnoDB  10      Compact     140859771   694             97812217856     0                   6618562560      6291456     191781518       2014-02-13 16:45:16     NULL            NULL        utf8_general_ci   NULL
Run Code Online (Sandbox Code Playgroud)

在工作服务器上:

Name        Engine  Version Row_format  Rows        Avg_row_length  Data_length     Max_data_length     Index_length    Data_free   Auto_increment  Create_time             Update_time     Check_time  Collation         Checksum  Create_options  Comment     
whois_main  InnoDB  10      Compact     140472243   694             97812217856     0                   6618562560      6291456     191781518       2013-11-19 15:39:38     NULL …
Run Code Online (Sandbox Code Playgroud)

mysql

5
推荐指数
1
解决办法
2万
查看次数

Mongo $组太慢了

我有一个大约168,200,000个文档的mongo db集合.我试图用$ group获取某个字段的平均值,并且我在管道中的$ group之前使用$ match来使用client.city上的索引.但查询运行大约需要5分钟,这非常慢.

以下是我尝试过的事情:

db.ar12.aggregate(
    {$match:{'client.city':'New York'}},
    {'$group':{'_id':'client.city', 'avg':{'$avg':'$length'}}}
)

db.ar12.aggregate(
    {$match:{'client.city':'New York'}},
    {'$group':{'_id':null, 'avg':{'$avg':'$length'}}}
)

db.ar12.aggregate(
    {$match:{'client.city':'New York'}}, 
    {$project: {'length':1}},
    {'$group':{'_id':null, 'avg':{'$avg':'$length'}}}
)
Run Code Online (Sandbox Code Playgroud)

所有3个查询大约需要同一时间,client.city =到纽约的文档数量为1,231,672,find({'client.city':'New York').count()需要一秒钟才能运行

> db.version()
  3.2.0
Run Code Online (Sandbox Code Playgroud)

编辑

这是解释结果......对于添加长度的复合索引的注释,这会有所帮助,虽然我不是按长度搜索我想要所有长度...

{
"waitedMS" : NumberLong(0),
"stages" : [
    {
        "$cursor" : {
            "query" : {
                "client.city" : "New York"
            },
            "fields" : {
                "length" : 1,
                "_id" : 1
            },
            "queryPlanner" : {
                "plannerVersion" : 1,
                "namespace" : "clients.ar12",
                "indexFilterSet" : false,
                "parsedQuery" : { …
Run Code Online (Sandbox Code Playgroud)

average mongodb aggregation-framework

5
推荐指数
1
解决办法
854
查看次数

标签 统计

aggregation-framework ×1

average ×1

mongodb ×1

mysql ×1

pdo ×1

php ×1