小编dat*_*.io的帖子

使用PHP分页时MySQL大表性能问题

有一个巨大的mysql表,有300,000条记录,并希望以这种方式用PHP查询PHP中的记录(尽管这里不是重点):

SELECT * FROM `table` LIMIT 250000, 100 
Run Code Online (Sandbox Code Playgroud)

在记录的后半部分可能会非常缓慢,特别是在接近表格末尾时(LIMIT开始非常大).我的猜测是MySQL在将结果舀到我之前必须一直计算到250000?

那么如何解决这种或任何其他分页方法可能会更快?谢谢!

mysql database performance

6
推荐指数
1
解决办法
4848
查看次数

如何在没有SET NAMES的情况下使用PDO指定排序规则?

我们可以在初始化PDO时将char设置显式设置为utf8,只需将" charset=utf8" 添加到dsn字符串即可.但是,在使用PDO时,如何明确指定MySQL连接中使用的排序规则?

我不想使用其他查询来执行此操作:

SET NAMES utf8 COLLATE utf8_unicode_ci;
Run Code Online (Sandbox Code Playgroud)

有没有办法不诉诸"SET NAMES"?或者,如果我没有指定排序规则会有任何问题吗?

php mysql pdo

6
推荐指数
2
解决办法
7603
查看次数

将列定义从一个表复制到另一个表?

我想将一列(定义,而不是数据)从一个表复制到另一个表。如果目标表中不存在该列,则添加该列,或者更好的是,如果存在,则相应地修改它。

试图谷歌,但一切似乎都是关于复制数据而不是定义,或者关于使用CREATE TABLE ... LIKE ....

到目前为止我能找到的最接近的是:

CREATE TABLE table2 AS 
SELECT field4, field7                -- only the columns you want
FROM table 
WHERE FALSE;                 -- and no data
Run Code Online (Sandbox Code Playgroud)

但我需要将列复制到现有表中。所以我试过:

ALTER TABLE table2 AS 
SELECT field4, field7                -- only the columns you want
FROM table 
WHERE FALSE;                 -- and no data
Run Code Online (Sandbox Code Playgroud)

但显然它拒绝工作。

有这样的吗?

ALTER TABLE table1 ADD COLUMN column2 LIKE table2.column5
Run Code Online (Sandbox Code Playgroud)

有什么办法可以在 MySQL 中实现这一点吗?

mysql ddl

6
推荐指数
1
解决办法
613
查看次数

在MySQL数据库的表列中找到所有字符?

有没有一种简单的方法来找出MySQL中表的特定列中使用的所有字符?

例如,这些记录:

"title"
"DP&E"
"UI/O"
"B,B@M"
Run Code Online (Sandbox Code Playgroud)

“标题”列中使用的所有字符为:DPEUIOBM&/ @,

mysql

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

Magento API错误:给出的数据无效.错误消息中的详细信息 - 这个"错误信息"在哪里?

我试图创建一个新产品,但发生了一些奇怪的问题,它只是给了我这个错误:

Invalid data given. Details in error message.
Run Code Online (Sandbox Code Playgroud)

这是由此片段中的$ e - > getMessage()生成的:

try {
    $result = $proxy -> call($sessionId, $api, $parameters);
    return $result;
} catch (SoapFault $e) {
    echo '<p style="color:red;">'.$e -> getMessage().'</p>';
    return false;
}
Run Code Online (Sandbox Code Playgroud)

那么这个"错误信息"在哪里?谢谢!

api exception soap-client magento

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

通过 JavaScript 跟踪 Ctrl + F 的使用情况?

是否可以通过JavaScript 中的Ctrl+了解我的用户在我的网页上搜索的内容F?因此,当用户使用Ctrl+F进行搜索时,JavaScript 可以捕获此操作(和搜索短语)并将其发送回服务器。

可能的?如何?

javascript browser analytics

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

钢琴/乐谱的数字格式?

关于如何以数学方式而不是图像或PDF格式存储乐谱或钢琴乐谱,是否有任何可接受的标准?

其中的所有内容都以数字方式表示,例如XML或其他内容,因此当需要时,他或她可以轻松地操纵音乐本身,而不仅仅是编辑PostScript图像.

是否存在任何此类格式以及用于携带乐谱的许可?

xml musicxml music-notation

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

正则表达式反向引用非捕获组?

针对这样的字符串:

<h3>title</h3>
<h4>title</h4>
Run Code Online (Sandbox Code Playgroud)

如何对应标签并获取其中的文本?

这是可行的,但它不必要地获取标签名称:

'@<(h[34])>(.+)</\1>@sU'
Run Code Online (Sandbox Code Playgroud)

然而,这似乎不起作用,因为我不想获取标签名称,而只是想反向引用它:

'@<(?:h[34])>(.+)</\1>@sU'
Run Code Online (Sandbox Code Playgroud)

我正在使用 PHP preg_match()。为什么第二种方法不起作用?是否可以反向引用非捕获组?

php regex

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

如何用PHP制作聊天室脚本?

有几位访问者访问http://site.com/chat.php

他们每个人都可以编写短信并发送到chat.php,它会立即显示在每个人的浏览器上(http://site.com/chat.php)

我必须使用数据库吗?我的意思是,AJAX或PHP缓冲功能是否适合会话中的聊天室?

不同用户的会话如何彼此共享数据?

任何想法或见解将不胜感激,谢谢!

编辑:感谢您的链接.但我想要的是将数据推送到客户端浏览器的方式.是不断刷新客户端浏览器(AJAX与否)的唯一方法?此外,这里的挑战是不同的用户(例如,2,1对1)如何共享聊天文本?你如何存储它们?你如何在两个客户之间同步文本?最好不要使用数据库.

编辑2:实际上,Peter D提到的YShout做得很好.它似乎不会继续刷新浏览器.但我不明白它是如何将新消息推送到现有用户的窗口的.

php chatroom

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

为Magento的其中一个页面设置breadcrumb?

我有这个页面,例如没有正确的面包屑集:http://www.princessly.com/checkout/cart/

这只是"家">>就是这样.

我怎样才能成为"首页>>购物车"?

到目前为止,我只能找到breadcrumb模板,它是template/page/html/breadcrumbs.phtml,但我不知道如何进行此更改.

我想我应该在购物车页面模板中添加一行?

magento

4
推荐指数
1
解决办法
6137
查看次数