问题列表 - 第11648页

MySQL不使用带JOIN,WHERE和ORDER的索引

我们有两个类似于简单标记记录结构的表格如下(实际上它要复杂得多,但这是问题的本质):

tag (A.a) | recordId (A.b)
1         | 1
2         | 1
2         | 2
3         | 2
....
Run Code Online (Sandbox Code Playgroud)

recordId (B.b) | recordData (B.c)
1              | 123
2              | 666
3              | 1246
Run Code Online (Sandbox Code Playgroud)

问题是获取具有特定标记的有序记录.显而易见的方法是使用简单的连接和索引(PK)(Aa,Ab),(Ab),(PK)(Bb),(Bb,Bc),如下所示:

select A.a, A.b, B.c from A join B on A.b = B.b where a = 44 order by c;
Run Code Online (Sandbox Code Playgroud)

但是,这会给文件排序带来不愉快的结果:

+----+-------------+-------+------+---------------+---------+---------+-----------+------+----------------------------------------------+
| id | select_type | table | type | possible_keys | key     | key_len | ref       | rows | Extra                                        |
+----+-------------+-------+------+---------------+---------+---------+-----------+------+----------------------------------------------+
|  1 …
Run Code Online (Sandbox Code Playgroud)

mysql indexing join materialized-views sql-order-by

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

在Perl中,为什么在尝试使用字符串eval时会出现语法错误?

为什么这不起作用?

eval "$response = $ua->request($r);"
print "$@";
Run Code Online (Sandbox Code Playgroud)

得到:

syntax error at (eval 8) line 1, near "=" 
Run Code Online (Sandbox Code Playgroud)

string syntax perl eval

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

SQL Server Management Studio SSMS尝试"保存到文件"而不是在F5上执行

这种情况间歇性发生,似乎与意外击中钥匙有关.

有什么想法导致这个?

ssms sql-server-2008

121
推荐指数
2
解决办法
3万
查看次数

如何使用不同的STL与g ++

我想使用不同的STL与g ++而不是默认的libstdc ++.最简单的方法是什么?

我发现-nostdinc ++ flag禁止g ++查找其STL头文件,但这只是一个编译时间.它仍将使用自己的STL进行g ++链接.

所以我需要找到一种方法来抑制链接.

谢谢!

c++ gcc stl

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

使用jQuery检查链接是内部链接还是外部链接

我想写一个脚本,可以确定链接是内部链接还是外部链接.从我的角度来看这很简单,所有内部链接都是相对的,因此它们以/开头.所有外部链接都以http://开头 - 到目前为止一切都很好.但是我无法弄清楚如何在除文本之外的任何内容上执行':contains()' - 如何在属性中搜索字符串?

一旦我能做到这一点,我很高兴自己添加target _blank,除非你知道更好的方法

jquery

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

ASP.NET 2.0:编写错误页面的最佳实践

在asp.net 2.0网站上,编写错误页面的最佳方法是什么.我在以下位置看过以下部分:

  • Web.Config中

    <customErrors mode="RemoteOnly" defaultRedirect="~/Pages/Common/DefaultRedirectErrorPage.aspx">
    
    Run Code Online (Sandbox Code Playgroud)

  • Global.asax中

    void Application_Error(object sender, EventArgs e) 
    { 
    }
    
    Run Code Online (Sandbox Code Playgroud)

  • 我没有得到如何以最佳方式使用它们来进行错误处理.

    请指导我最好的方法.

    asp.net error-handling global-asax

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

    如何从Delphi中的URL获取图像

    我正在寻找任何代码示例,展示如何将图像从URL拉入Delphi TImage组件.

    谢谢,

    delphi indy

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

    如何在Linq to SQL中添加日期

    我正在写这段代码.这里dt输入到函数中,以及someint.Exp列是一个T-SQL日期列,它通过Linq作为DateTime.

    return (from a in dataContext.TableOfA
           where a.name == "Test" &&
           a.Exp.Value.AddDays(Convert.ToDouble(Someint)) >= new DateTimeOffset(dt)
           select a).First();
    
    Run Code Online (Sandbox Code Playgroud)

    在C#中,您可以在日期时间中添加一天.意思是你可以添加1.5天.在T-SQL中,您只能添加1天,然后增加12小时.您必须为每个部件添加一个int.因此,当Linq将AddDays转换为T-SQL时,它会将我的天数转换为毫秒,并添加这些天数.这允许它给出double赋予C#的所有精度.

    这就是问题.当这到达SQL时,我收到错误:

    数据类型日期的日期函数dateadd不支持datepart毫秒

    基本上你不能在一个日期添加毫秒.好吧不开玩笑.但是我如何获得翻译的内容呢?我想将int天添加到日期.唯一想要这样做的是将它们的负面效果添加到我正在比较的另一个人身上吗?如果我想在添加到列时与列进行比较,该怎么办?

    更新1

    Keith写道,至少从SQL Server 2000开始,T-SQL支持像datepart(毫秒,10000,myDate)这样的命令.这个错误表明你使用的数据库不支持毫秒日期部分,这对我来说似乎很奇怪.

    请注意我使用的是SQL Server 2008.DATE数据类型不支持它.它在datetime上受支持.

    c# datetime linq-to-sql

    16
    推荐指数
    2
    解决办法
    3万
    查看次数

    如何在java(不是文件夹)中创建文件?

    也许有点尴尬,但几个小时后我仍然无法用Java创建文件...

    File file = new File(dirName + "/" + fileName);
    try
    {
        // --> ** this statement gives an exception 'the system cannot find the path'
        file.createNewFile();
        // --> ** this creates a folder also named a directory with the name fileName
        file.mkdirs();
        System.out.println("file != null");
        return file;
    }
    catch (Exception e)
    {
        System.out.println(e.getMessage());
        return null;
    }
    
    Run Code Online (Sandbox Code Playgroud)

    我在这里错过了什么?

    java

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

    链接库中的库和.exe在Visual Studio中的调试崩溃

    我正在使用Visual C++ 2008 SP1.我有一个在调试模式下编译的应用程序,但在发布模式下链接到库.

    我在启动应用程序时遇到了崩溃.为了缩小问题,我创建了一个包含2个项目的简单解决方案:

    • lib_release(在发布模式下生成.lib)
    • exec_using_lib_release(在调试模式下生成.exe)

    'lib_release'项目非常简单,只需要一个简单的类:

    //Foo.h
    #include <vector>
    class Foo {
      std::vector<int> v;
      public:
      void doSomething();
    };
    //Foo.cpp
    #include "Foo.h"
    void Foo::doSomething() {}
    
    Run Code Online (Sandbox Code Playgroud)

    'exec_using_lib_release'项目很简单,如下所示:

    //main.cpp
    #include "Foo.h"
    int main() {
       Foo foo;
       foo.doSomething();
       return 0;
    }
    
    Run Code Online (Sandbox Code Playgroud)

    它崩溃,这是由如何针对发布版本的lib(MSVCRT.lib)构建调试.exe(MSVCRTD.lib)报告的相同问题,但他的回答对我不起作用.

    我得到了相同的链接器警告,我尝试了相同的步骤,但没有一个工作.有什么我想念的吗?

    编辑:

    在lib_release(在发布模式下创建一个库),我正在使用Multi Threaded(/ MT),在exec_using_lib_release,我正在使用多线程调试(/ MTd).我认为这是实现它的预期方式,因为我希望在没有调试信息的情况下创建.lib.我在MSDN运行时库中阅读了该文档,这些是以静态方式链接CRT的设置.

    我也没有"公共语言运行时支持".

    c++ linker visual-studio-2008 visual-studio

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