问题列表 - 第26193页

使用Zend DB Select选择任意字符串?

我正在使用流畅的界面来创建Zend DB Select对象/查询.作为查询的一部分,我想选择一个任意字符串,例如"SELECT'foo'AS'type'FROM ...".foo不是一个列,它只是一个字符串文字.

当我选择任意数字时,查询按预期工作.当我将其更改为字符串时,Zend会尝试将foo视为列,并抛出错误:

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'l.foo' in 'field list'
Run Code Online (Sandbox Code Playgroud)

我尝试以各种方式在Zend_Db_Expr中包装字符串,例如:

$select->columns(array('type' => new Zend_Db_Expr('foo')));
Run Code Online (Sandbox Code Playgroud)

这会阻止Zend添加相关名称,但它仍然将其视为列:

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'foo' in 'field list'
Run Code Online (Sandbox Code Playgroud)

我觉得我必须在这里遗漏一些明显的东西.我如何告诉Zend停止将其视为一个列?

zend-framework zend-db

11
推荐指数
1
解决办法
3304
查看次数

检查是否在集成管道模式下

是否可以检查我们的代码是否在集成管道模式下执行?

有一些ASP.NET类属性只能在集成管道模式下工作,如果有办法测试我们的代码是否在该环境中执行,我想避免引发异常.

asp.net iis iis-7 integrated-pipeline-mode

19
推荐指数
1
解决办法
3530
查看次数

使用YIELD是一种只读方式来返回一个集合吗?

我正在编写一个具有集合属性的接口,我想要只读它.我不希望界面的用户能够修改集合.我发现创建只读集合属性的典型建议是将属性的类型设置为IEnumerable,如下所示:

private List<string> _mylist;
public IEnumerable<string> MyList
{
get
    {
        return this._mylist;
    }
}
Run Code Online (Sandbox Code Playgroud)

然而,这并不妨碍用户将IEnumerable转换回List并对其进行修改.

如果我使用Yield关键字而不是_mylist直接返回,则会阻止我的界面用户修改集合.我是这么认为的,因为那时我只是逐个返回对象,而不是实际的集合.

 private List<string> _mylist;
public IEnumerable<string> MyList
{
get
    {
        foreach(string str in this._mylist)
        {
            yield return str;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

.net c# properties yield-keyword

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

慢MySQL查询不使用filesort

随着我的数据库表变大,我的主页上的查询越来越慢.

tablename = tweets_cache rows = 572,327

这是我目前使用的查询很慢,超过5秒.

SELECT * FROM tweets_cache t WHERE t.province='' AND t.mp='0' ORDER BY t.published DESC LIMIT 50;
Run Code Online (Sandbox Code Playgroud)

如果我取出WHERE或ORDER BY,那么查询超快0.016秒.

我在tweets_cache表上有以下索引.

PRIMARY
published
mp
category
province
author
Run Code Online (Sandbox Code Playgroud)

所以我不确定为什么它不使用索引,因为mp,provice和发布都有索引?执行查询的配置文件显示它不使用索引对查询进行排序,并且正在使用非常慢的filesort.

possible_keys = mp,province
Extra = Using where; Using filesort
Run Code Online (Sandbox Code Playgroud)

我尝试使用"profiles&mp"添加一个新的multie-colum索引.解释显示这个新索引列在"possible_keys"和"key"下,但查询时间不变,仍然超过5秒.

以下是查询中的探查器信息的屏幕截图.

奇怪的是,我在我的本地桌面上进行了数据库转储以便进行测试,所以我不会搞砸现场网站.我本地的相同查询运行超快,毫秒.所以我将所有相同的mysql启动变量从服务器复制到我的本地,以确保没有可能导致这种情况的设置.但即便如此,本地查询运行速度超快,但实时服务器上的查询超过5秒.

我的数据库服务器只使用了大约800MB的4GB可用空间.这是我正在使用的相关my.ini设置

default-storage-engine = MYISAM
max_connections = 800
skip-locking key_buffer
= 512M
max_allowed_pa​​cket = 1M
table_cache = 512 sort_buffer_size =
4M
read_buffer_size = 4M
read_rnd_buffer_size = 16M
myisam_sort_buffer_size = 64M
thread_cache_size = 8 query_cache_size …

mysql performance

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

PHP数组包括性能

如果我包含一个庞大的PHP数组,我可以期待什么类型的性能?例如,假设我在"data.php"中有一个1GB的PHP数组,看起来像

$ data = array(// 1GB的数据)

如果我在"header.php"中包含那个巨大的"data.php"文件,它在执行时会如何影响"header.php"的性能?谢谢!

php arrays performance include

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

我可以在给定时间仅播放任何缓冲区一次吗?

来自 OpenAL 文档:

基本的 OpenAL 对象是监听器、源和缓冲区。可以有大量的Buffer,其中包含音频数据。每个缓冲区可以附加到一个或多个源

我的问题是,我有一个声音文件,我需要每秒同时播放多次。声音时长2秒。所以会重叠。

我是否需要为此填充多个缓冲区(=内存中声音的多次)?

如果我将一个缓冲区附加到多个源,我是否能够播放声音 10 次(重叠),而内存中只有一份副本?或者我仍然需要在内存中处理该声音的 10 个副本吗?

iphone audio openal

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

SQL查询中的"数据类型text和nvarchar在等于运算符中不兼容"

为什么我收到此错误:

数据类型text和nvarchar在等于运算符中不兼容.数据库中"用户名"字段是文本类型...

这是我的感受:

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="my_answers.ascx.cs" Inherits="kontrole_login_my_answers" %>

<div style=" margin-top:-1280px; float:left;">       

<p></p>


                              <div id="question">
Add question





</div>
</div>
<asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDataSource1" 

   >

</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
    ConnectionString="<%$ ConnectionStrings:estudent_piooConnectionString %>" 
    SelectCommand="SELECT * FROM [question] WHERE ([username] = @fafa)">
    <SelectParameters>
        <asp:QueryStringParameter Name="fafa" QueryStringField="user" 
            Type="String"/>
    </SelectParameters>
</asp:SqlDataSource>
Run Code Online (Sandbox Code Playgroud)

sql

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

如何在成员函数中使用"this"?

我编写了Node类的成员函数,以后缀顺序读取节点树.

它将由Node实例调用,该实例是树的根节点.

所以:N.postfix();

这些似乎是非法的:

*this->left.postfix();
*this->right.postfix();
Run Code Online (Sandbox Code Playgroud)

这样做的正确方法是什么?

class Node
{
public:
    const char *cargo; 
    int depth; 
    Node *left; 
    Node *right

void Node::postfix()
{
    if (this==__nullptr)
    {
        return;
    }
    else
    {
        *this->left.postfix();
        *this->right.postfix();
        out<<*this->cargo<<"\n";
        return;
    }
};
Run Code Online (Sandbox Code Playgroud)

c++

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

存在测试列,添加列和更新列

我正在尝试编写SQL Server数据库更新脚本.我想测试表中是否存在列,然后如果它不存在则添加具有默认值的列,最后根据同一表中不同列的当前值更新该列.我希望这个脚本可以多次运行,第一次更新表时,在后续运行中应该忽略脚本.我的脚本目前如下所示:

IF NOT EXISTS(SELECT * FROM INFORMATION_SCHEMA.COLUMNS
    WHERE TABLE_NAME = 'PurchaseOrder' AND COLUMN_NAME = 'IsDownloadable')
BEGIN

ALTER TABLE [dbo].[PurchaseOrder] ADD [IsDownloadable] bit NOT NULL DEFAULT 0

UPDATE [dbo].[PurchaseOrder] SET [IsDownloadable] = 1 WHERE [Ref] IS NOT NULL

END
Run Code Online (Sandbox Code Playgroud)

SQL Server返回错误"无效的列名'IsDownloadable'",即我需要在更新列之前提交DDL.我尝试了各种排列,但是我无法快速进行.

t-sql sql-server ddl

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

在Eclipse IDE中创建自定义项目模板

我已经使用Eclipse IDE很长一段时间了.它是一个非常棒的Java/C/C++ IDE(以及其他几百种插件的语言).每隔一段时间,我就需要创建一个Javax接口.为了做到这一点,我会设置新的java项目,然后添加我需要的东西.但是,如果我可以创建一个模板项目来自动包含文件的代码,那不是很好.我该怎么做呢?它甚至可能吗?Eclipse CDT可以创建一个新的项目类型.Google ADT和Google App引擎也是如此.所以我认为这是可能的.但是怎么样?

eclipse templates project

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