草庐IT

MySQL优化

全部标签

php - 带有Magento的GetModel类基于不是主键的mysql字段检索数据

我想更改此代码段以从表中获取一些数据,而不是触发主键(这看起来像load()函数的默认行为),我想在我的请求中触发另一个字段...我该怎么做?$mytable=Mage::getModel('mytable/mytable')->load($mytable_id)->getData();谢谢 最佳答案 您可以使用该集合:$mytable=Mage::getModel('mytable/mytable')->getCollection()->addFieldToFilter('your_attribute_code','your_fi

php - 如何优化获取随机图片的场景?

我有大约100页,每页附有10-100张图片。图像的路径保存在数据库中。然后,我在每个页面都有一个区域,用户可以从上面提到的图片列表中看到随机图片。此图像每3秒更改一次。为了实现这样的场景,我使用了一个javascript函数,它每3秒调用一次。functionGenerateNewImg(){$.ajax({url:"myurl.php",type:"get",dataType:'json',async:true,success:function(data){$("#imgtochange").attr("src",data.res);}});t=setTimeout('Genera

php - 如何使用准备好的语句在 mysql 中增加列?

如果没有准备好的语句,可以简单地使用“SETcolumn=column+1”来增加一列。但是我似乎无法使用准备好的语句来完成这项工作。如果可能的话,我在这里做错了什么?prepare($query)){$stmt->bind_param('ii','posts'+1,1);$stmt->execute();$stmt->close();} 最佳答案 $query="UPDATEforums_topicsSETposts=posts+?WHEREid=?" 关于php-如何使用准备好的语句

php - 从 MySQL 收到的格式和回显日期时间字符串?

我如何格式化从MySQL收到的日期时间字符串?例如,当我做echo$info['start_datetime']我得到2012-03-1821:00:00,但我想把它变成2012年3月18日星期日。我查看了显示不同格式的php文档,但不是特别是在从MySQL检索它们时。谢谢大家! 最佳答案 echodate('l,Fd,Y',strtotime($info['start_datetime'])); 关于php-从MySQL收到的格式和回显日期时间字符串?,我们在StackOverflow

php - 从 MySQL 数据中删除/隐藏添加的反斜杠

我有大约一千个条目,它们在整个条目中都包含反斜杠。有没有简单的方法或脚本可以从每个条目中删除特定字符? 最佳答案 替换应该完成你的工作。http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_replaceUPDATEtable_nameSETcol=REPLACE(col,'\\','')这应该有效。它将更新用空字符串替换\的列。我只是不记得是否必须转义\,使用\\或只是\。在运行查询之前检查它,使用SELECTcol,REPLACE(col,'\

MySQL之误删数据如何处理

写在前面在工作中不管是程序bug,运维的失误,等,都有可能导致数据误删除,或者是误操作,此时我们就必须快速的恢复数据,避免对正常业务造成过大的影响,甚至出现事故,本文我们按照如下的几种情况来分析下误删数据如何处理:1:误删除行数据2:误删除表数据3:误删除库数据4:误删除MySQL实例下面我们就按照这个顺序来一起看下。1:误删除行数据对于这种情况,可以比较容易的使用flashback的功能来进行数据的恢复,目前业界已有的方式如下:1:mysqlbinlog优点:字段简单的话可以快速生成sql,编程门槛低缺点:字段如果是比较复杂,如字段值中包含特殊字符时,需要考虑进行转义,容易出错。2:给源码打

PHP 优化 : Fetching from database

我有一些PHP代码,一旦按下下一个箭头,它基本上只会获取数据库中的下一张图像。然而,在我的网站上,我有时可以有600多个在线用户都点击下一步。有什么方法可以优化此php代码以更快地执行?谢谢!$nxtImage=mysql_query("SELECT*FROMimagesWHEREactive=1andid>$idandsection=$sectionORDERBYidASCLIMIT1")ordie(mysql_error());$nxtrow=mysql_fetch_array($nxtImage);$nxtnum=mysql_num_rows($nxtImage);$nid=$n

php - 如何为从 mySQL 获取数据的 'select' 框创建占位符?

我正在尝试为从mySQL获取结果的下拉框添加占位符,但我不知道是否有办法。';while($row=mysql_fetch_array($query)){echo''.$row['training_type'].'';}echo'';echo"";?> 最佳答案 检查这个,我添加了Placeholder,我觉得你可以将其用作占位符。';echo'Placeholder';while($row=mysql_fetch_array($query)){echo''.$row['training_type'].'';}echo'';echo

PHP/MySQL - 在数据库中存储数组

我正在开发一个PHP应用程序,它需要将各种设置存储在数据库中。客户经常会问是否可以添加或更改/删除某些东西,这一直导致表格设计出现问题。基本上,我有很多bool字段,它们简单地指示是否为特定记录启用了各种设置。为了避免再弄乱表格,我正在考虑将数据存储为序列化数组。我读到这被认为是不好的做法,但我认为这是使用这种方法的合理案例。是否有真正的理由避免这样做?感谢任何建议。谢谢。 最佳答案 真正的原因是规范化,你会破坏firstnormalform通过这样做。但是,在许多情况下可以考虑违反正常形式。您要处理多少个字段,它们都是bool值吗

php - 如何使用 php 连接到远程 mysql 数据库(托管在 dotCloud 上)

我无法连接到驻留在dotCloud上的数据库。我试过:$mysqli=newmysqli($db_host,$db_user,$db_password,$db_name);和$mysqli=mysqli_connect($db_host,$db_user,$db_password,$db_name);和$mysqli=newmysqli($remote_server,$db_user,$db_password,$db_name);和$mysqli=mysqli_connect($remote_server,$db_user,$db_password,$db_name);但连接失败,我收