问题列表 - 第27966页

为什么ROW_NUMBER OVER(ORDER BY列)返回的结果顺序不仅仅是ORDER BY列?

我在SQL Server 2008上,使用NHibernate作为持久层(尽管这个问题纯粹是SQL,我相信).

我把我的问题归结为以下SQL语句:

SELECT TOP 2
    this_.Id   as Id36_0_,
    this_.Name as Name36_0_,
    ROW_NUMBER() OVER (ORDER BY this_.IsActive) as MyOrder
FROM    Campsites this_
ORDER BY this_.IsActive  /* a bit field */
Run Code Online (Sandbox Code Playgroud)

这是NH为检索分页结果集而生成的查询的一部分.以上陈述给出了以下结果:

Id36_0_ Name36_0_                       MyOrder
9806    Camping A Cassagnau                 1
8869    Camping a la ferme La Bergamotte    2
Run Code Online (Sandbox Code Playgroud)

但是,如果我省略ROW_NUMBER()OVER(ORDER BY this_.IsActive) - 这是NH为在第一页上检索结果而生成的 - 我在结果中得到两个完全不同的表条目:

SELECT   TOP 2
    this_.Id   as Id36_0_,
    this_.Name as Name36_0_
    /* ROW_NUMBER() OVER(ORDER BY this_.IsActive) as MyOrder */
FROM     Campsites this_
ORDER BY this_.IsActive  /* a …
Run Code Online (Sandbox Code Playgroud)

t-sql nhibernate row-number sql-order-by sql-server-2008

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

为什么即使条件求值为false,也会在IF语句中声明变量?

由于永远不会声明@A,因此sql server应该抛出错误,但事实并非如此.这是为什么?

DECLARE @i int = 1;
IF @i > 10
BEGIN
  DECLARE @A int = 100;
END

PRINT @A; // doesn't return any result
Run Code Online (Sandbox Code Playgroud)

感谢名单

sql t-sql sql-server

18
推荐指数
2
解决办法
9546
查看次数

有没有办法在VB.NET中知道是否为事件注册了处理程序?

在C#中,我可以测试一下......

public event EventHandler Trigger;
protected void OnTrigger(EventArgs e)
{
    if (Trigger != null)
        Trigger(this, e);
}
Run Code Online (Sandbox Code Playgroud)

有没有办法在VB.NET中执行此操作?测试null我的意思是?

更多信息

我忘了提.我有用C#编写的类,但我在VB.NET中编写单元测试.

我在单元测试中尝试这个...

If myObject.Trigger IsNot Nothing Then  
    ''#do something
End If
Run Code Online (Sandbox Code Playgroud)

这导致编译时错误,该错误表示......"公共事件触发器是一个事件,无法直接调用.使用RaiseEvent语句引发事件."

赛斯

.net c# vb.net null events

11
推荐指数
3
解决办法
9465
查看次数

使用XSL用新节点替换XML节点

我需要一个XSL解决方案来用新节点替换XML节点.

假设我有以下现有的XML结构:

<root>
    <criteria>
        <criterion>AAA</criterion>
    </criteria>
</root>
Run Code Online (Sandbox Code Playgroud)

我想用以下内容替换一个标准节点:

<criterion>BBB</criterion>
<criterion>CCC</criterion>
<criterion>DDD</criterion>
Run Code Online (Sandbox Code Playgroud)

这样最终的XML结果是:

<root>
    <criteria>
        <criterion>BBB</criterion>
        <criterion>CCC</criterion>
        <criterion>DDD</criterion>
    </criteria>
</root>
Run Code Online (Sandbox Code Playgroud)

我已经尝试使用substring-before和substring-after来复制结构的前半部分,然后只复制下半部分(为了在两半之间填充我的新节点)但是看起来子串仅起作用识别节点标签之间的文本,而不是像我想要的那样识别标签本身.:( :(

还有其他方法吗?

xml xslt xpath

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

新的Perl用户:使用数组哈希

我正在做一个小型数据挖掘项目,其中perl脚本从SQL数据库中获取信息并对其进行解析.数据由几个时间戳组成.我想知道在任何特定日期存在多少特定类型的时间戳.不幸的是,这是我的第一个perl脚本,而且当涉及到哈希和数组时,perl的性质令我感到困惑.

代码段:

my %values=();#A hash of the total values of each type of data of each day.
#The key is the day, and each key stores an array of each of the values I need.
my @proposal;
#[drafted timestamp(0), submitted timestamp(1), attny approved timestamp(2),Organiziation approved timestamp(3), Other approval timestamp(4), Approved Timestamp(5)]
while(@proposal=$sqlresults->fetchrow_array()){
 #TODO: check to make sure proposal is valid
 #Increment the number of timestamps of each type on each particular date
 my $i;
for($i=0;$i<=5;$i++)
$values{$proposal[$i]}[$i]++;
#Update rolling average of …
Run Code Online (Sandbox Code Playgroud)

sql perl hash perl-data-structures

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

在Android NDK上构建OpenSSL

我想在Android 2.1/2.2上使用JNI使用DTLS(在OpenSSL上).

有人可以帮助我开始使用Android NDK构建OpenSSL for Android(2.1/2.2)吗?(教程,指南,指针等)?

在做之前我应该​​注意的任何重要事项.

谢谢.

java-native-interface android openssl datagram android-ndk

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

有什么方法可以在Javascript数组中为延迟变量定义getter?

我正在尝试将元素添加到延迟评估的数组中.这意味着在访问它们之前,不会计算或知道它们的值.这就像我之前提出的问题,但对象是对象.

我最终为对象做的是

Object.prototype.lazy = function(var_name, value_function) {
  this.__defineGetter__(var_name, function() {
    var saved_value = value_function();
    this.__defineGetter__(var_name, function() {
      return saved_value;
    });
    return saved_value;
  });
}

lazy('exampleField', function() {
  // the code that returns the value I want
});
Run Code Online (Sandbox Code Playgroud)

但我还没有找到一种方法来为真正的数组做这件事.数组没有这样的setter.您可以将函数推送到数组,但是您必须将其作为函数调用它来返回您真正想要的对象.我现在正在做的是创建了一个我将其视为数组的对象.

Object.prototype.lazy_push = function(value_function) {
  if(!this.length)
    this.length = 0;
  this.lazy(this.length++, value_function);
}
Run Code Online (Sandbox Code Playgroud)

所以我想知道的是,还有一种方法可以在数组上执行此操作而不是假数组吗?

更新:以下函数仅在value_function返回基本数据类型时有效.

Array.prototype.lazy_push = function(value_function) {
  var a = this,
  i = this.length;
  this.push({
    toString: function() {
      return a[i] = value_function();
    }
  });
}
Run Code Online (Sandbox Code Playgroud)

如果您尝试推送一个包含属性的对象,则在直接访问该对象之前,您将无法访问这些属性.这不会发生在setter中,这就是为什么我想要一些Javascript的设置语法.现在我将使用假阵列,这对我正在做的事情已经足够了.

javascript arrays lazy-evaluation

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

在htaccess文件中将所有URL和文件夹从http重定向到https

域名从htaccess文件中的http重定向到https,但我的网址和文件夹都不会从http重定向到https.示例:www.example.com/example.html或www.example.com/folder/example.html不会从http重定向到https

htaccess文件的重写规则是什么,将所有网址和所有文件夹从http重定向到https?

.htaccess redirect

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

jQuery .unbind()方法只适用于jQuery创建的事件吗?

我试图取消绑定特定容器内的所有元素的所有事件处理程序.像DIV一样.但是那些事件已被绑定/注册而不是使用jQuery.有些是onclick="...." 使用常规本机JavaScript 手动方式绑定的.

但是,当我做这样的事情

$('#TheDivContainer').find('div,td,tr,tbody,table').unbind();
Run Code Online (Sandbox Code Playgroud)

它似乎不起作用.这让我相信.unbind()只有在事件最初被jQuery绑定时才有效.

真的吗?是否有另一种解除一组元素中所有事件的方法?

谢谢!

javascript jquery javascript-events

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

在django admin中过滤基于用户的模型实例

我正在使用django的管理员让用户管理特定模型的模型实例.每个用户应该只能管理他的模型实例.(除了管理所有人的管理员外).

如何过滤管理员更改列表视图中的对象?

思考:

  • 我想最优雅的方法是使用对象级权限.谁知道这个的实现?
  • 是否可以通过使用ModelAdmin.changelist_view覆盖管理员的视图来做到这一点?
  • list_select_related与它有什么关系吗?

django django-models django-admin changelist

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