问题列表 - 第27209页

表现:子查询或加入

我对子查询的性能/加入另一个表有一个小问题

INSERT
INTO Original.Person
  (
    PID, Name, Surname, SID
  )
  (
    SELECT ma.PID_new , TBL.Name , ma.Surname, TBL.SID 
    FROM Copy.Person TBL , original.MATabelle MA
    WHERE TBL.PID         = p_PID_old
      AND TBL.PID         = MA.PID_old
  );
Run Code Online (Sandbox Code Playgroud)

这是我的SQL,现在这个东西运行大约100万次或更多.我的问题是什么会更快?

  • 如果我TBL.SID改为(Select new from helptable where old = tbl.sid)

要么

  • 如果我将'HelpTable'添加到from并且加入where

edit1
嗯,这个脚本的运行次数和r个人一样多.

我的程序有2个模块,一个填充MaTabelle,一个传输数据.该程序确实将2个数据库合并在一起,因此有时会使用相同的密钥.
现在我正在研究一种没有重复密钥存在的解决方案.

我的解决方案是制作一个'HelpTable'.key(SID)的所有者生成一个新密钥并将其写入"HelpTable".使用此密钥的所有其他表都可以从"HelpTable"中读取它.

edit2
刚想到的东西:
如果一个表作为一个可以为null的键(外键没有链接)那么这将无法使用from或?

sql oracle

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

模板方法的专业化 - 我的代码出了什么问题?

这段代码出了什么问题?

class School {
public:
    template<typename T> size_t count() const;
private:
    vector<Boy*> boys;
    vector<Girl*> girls;
};
template<> size_t School::count<Boy>() const {
    return boys.size();
}
Run Code Online (Sandbox Code Playgroud)

我的编译说

error: specialization of ‘size_t School::count() [with T = Boy]’
after instantiation
Run Code Online (Sandbox Code Playgroud)

能否请你帮忙?

PS.这就是我以后要用它的方法:

School s;
size_t c = s.count<Boy>();
Run Code Online (Sandbox Code Playgroud)

c++

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

继承和静态变量

这是我的代码 -

#include <iostream>
#include <conio.h>

using namespace std;

class Base
{
public:
int a;

};

//int Base::a = 5;

class Derived : public Base
{

public:
int static a;
};

int main()
{
   Derived d;
   cout<<d.a;
   getch();
   return 0;
}
Run Code Online (Sandbox Code Playgroud)

我在这里得到一个链接器错误.但是,当我以相反的方式做到这一点时 -

class Base
{
public:
int static a;

};

int Base::a = 5;

class Derived : public Base
{

public:
int a;
};
Run Code Online (Sandbox Code Playgroud)

我没有错.有人可以解释一下这里发生了什么.

c++

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

为什么Perl的Try :: Tiny的try/catch没有给我与eval相同的结果?

为什么不使用try/catch的子程序给出与eval-version相同的结果?

#!/usr/bin/env perl
use warnings; use strict;
use 5.012;
use Try::Tiny;

sub shell_command_1 {
    my $command = shift;
    my $timeout_alarm = shift;
    my @array;
    eval {
        local $SIG{ALRM} = sub { die "timeout '$command'\n" };
        alarm $timeout_alarm;
        @array = qx( $command );
        alarm 0;
    };
    die $@ if $@ && $@ ne "timeout '$command'\n";
    warn $@ if $@ && $@ eq "timeout '$command'\n";
    return @array;
}
shell_command_1( 'sleep 4', 3 );
say "Test_1";

sub shell_command_2 {
    my $command = shift; …
Run Code Online (Sandbox Code Playgroud)

perl eval try-catch

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

SCRIPT_FILENAME和SCRIPT_NAME之间的区别是什么?

我试图寻找差异,但每次变量都相同,任何想法?

php global-variables

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

servlet中的System.exit

如果有人System.exit()在servlet中写入服务器或应用程序崩溃会发生什么?

java security servlets

10
推荐指数
2
解决办法
3301
查看次数

适合字体的MIME类型

在网上搜索,我找到了大量关于字体的正确MIME类型的不同建议,但我还没有尝试任何可以解决Chrome警告的MIME类型,如下所示:

资源解释为字体但使用MIME类型font/otf传输

字体是OTF.

到目前为止,我已尝试过以下MIME类型

  • 字体/ OTF
  • 应用/字体OTF
  • 应用/字体
  • 应用程序/ OTF
  • 应用/八位字节流
  • 应用程序/ x-字体OTF
  • application/x-font-TrueType(我知道它不是truetype,但有一个来源引用了这个OTF)

fonts mime

241
推荐指数
9
解决办法
20万
查看次数

ASP 中的会话显示错误

IF Session("days")> 1 then
Run Code Online (Sandbox Code Playgroud)

此语句在我的经典 ASP 代码中不起作用。非常感谢任何帮助

只是我需要知道这是否是 Classic ASP 的有效会话代码(没有显示错误消息)

asp-classic

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

使用nHibernate Criteria将字符串转换为bool

我有一个使用Criteria的nHibernate查询,我试图在查询本身中将一个字符串转换为bool.我已经将字符串转换为int,并且运行良好("DataField"属性为"1"作为字符串):

var result = Session
   .CreateCriteria<Car>()
   .Add(Restrictions.Eq((Projections.Cast(NHibernateUtil.Int32,
    Projections.Property("DataField"), 1))
   .List<Car>();

tx.Commit();
Run Code Online (Sandbox Code Playgroud)

但我试图用bool做同样的事情,但我没有得到预期的结果:

var result = Session
   .CreateCriteria<Car>()
   .Add(Restrictions.Eq((Projections.Cast(NHibernateUtil.bool,
    Projections.Property("DataField"), true))
   .List<Car>();

tx.Commit();
Run Code Online (Sandbox Code Playgroud)

"DataField"是字符串"True",但结果为空列表,其中应包含100个元素,其中"DataField"属性字符串设置为"True".我已尝试使用字符串"true"和"1",但结果仍然是一个空列表.

[编辑]

如下面的评论,我可以检查字符串"True"或"False",但我会说这是一个比布尔值更普遍的问题.

请注意,这个想法是对数据进行某种键值表示,其中值可以是不同的数据类型.我需要值表来包含所有数据,因此将数据存储为字符串似乎是最干净的解决方案!

我已经能够使用上面的方法将int和double存储为字符串,并在查询中存储,但我没有成功使用相同的方法DateDime和Boolean.

对于DateTime,拥有实际的DateTime对象至关重要.

如何将从字符串转换为bool,并将字符串转换为DateTime在查询中工作?

谢谢

.net nhibernate casting criteria

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

如何识别表是否有标识列

我想知道表是否有标识列.表格不为我所知.我还没有完成表格的结构.使用查询?

我正在使用Sql Server Compact Edition.

sql sql-server sql-server-ce

29
推荐指数
5
解决办法
4万
查看次数