问题列表 - 第24656页

奇怪的WHERE col = NULL行为

这是我们的开发人员带给我的一个问题.他偶然发现了一个旧的存储过程,它多次使用'WHERE col = NULL'.执行存储过程时,它返回数据.

如果存储过程内的查询是手动执行的,除非'WHERE col = NULL'引用更改为'WHERE col IS NULL',否则它将不会返回数据.

谁能解释这种行为?

sql-server null

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

Java:将String转换为有效金额的正确方法是什么(BigDecimal)

我必须将传入的String字段转换为代表有效金额的BigDecimal字段,例如:

String amount = "1000";

BigDecimal valid_amount = convert(amount);

print(valid_amount.toString())//1000.00
Run Code Online (Sandbox Code Playgroud)

使用什么样的API将String转换为Java中的有效金额(例如:apache commons library)?

提前致谢,

java bigdecimal

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

从变量更新Tkinter标签

我写了一个Python脚本,它执行一些生成任务,然后不断更改存储为字符串变量的一些文本.这是有效的,我可以在每次更改时打印字符串.

我可以让Label第一次显示字符串,但它永远不会更新.

这是我的代码:

from tkinter import *

outputText = 'Ready'
counter = int(0)

root = Tk()
root.maxsize(400, 400)

var = StringVar()

l = Label(root, textvariable=var, anchor=NW, justify=LEFT, wraplength=398)
l.pack()

var.set(outputText)

while True:
    counter = counter + 1
    outputText = result
    outputText = result
    outputText = result
    if counter == 5:
        break

root.mainloop()
Run Code Online (Sandbox Code Playgroud)

标签将显示Ready,但不会更新以将其更改为字符串,因为它们稍后生成.

经过一番谷歌搜索和浏览本网站的答案,我认为解决方案可能是使用update_idletasks.每次更改变量后我都尝试将其放入,但它没有帮助.

python label tkinter

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

在Android中拖放+自定义绘图

我正在研究需要自定义拖放功能的东西,所以我一直在继承View,做一堆数学以响应触摸事件,然后通过onDraw画布上的代码手动渲染所有内容.现在,我添加的功能越多,代码越来越失控,我发现自己编写的代码比我在Android等高级环境中编写的代码要多得多.

这是怎么做的,还是我错过了什么?如果我在UI中没有做任何花哨的事情,那么框架会处理我的大多数交互.内置控件处理触摸和拖动,我的代码几乎仅限于业务逻辑和数据.有没有办法利用一些UI控件和动画之类的功能,同时还可以在onDraw画布上手动完成一些操作?是否有一个公认的标准,何时使用其中一个(如果两种方法确实可以混合使用)?

java user-interface android drag-and-drop

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

如何在VB.net中进行两次比较

我想在VB.net中进行两次比较:

我有1:42:21 PM我希望它与VB.net中的TimeOfDay进行比较我该怎么做?

vb.net timeofday

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

你可以在R中传递参考吗?

你能用"R"通过参考吗?例如,在以下代码中:

setClass("MyClass",
    representation(
    name="character"
    ))


instance1 <-new("MyClass",name="Hello1")
instance2 <-new("MyClass",name="Hello2")

array = c(instance1,instance2)

instance1
array

instance1@name="World!"

instance1
array
Run Code Online (Sandbox Code Playgroud)

输出是

> instance1
An object of class “MyClass”
Slot "name":
[1] "World!"

> array
[[1]]
An object of class “MyClass”
Slot "name":
[1] "Hello1"


[[2]]
An object of class “MyClass”
Slot "name":
[1] "Hello2"
Run Code Online (Sandbox Code Playgroud)

但我希望如此

> instance1
An object of class “MyClass”
Slot "name":
[1] "World!"

> array
[[1]]
An object of class “MyClass”
Slot "name":
[1] "World!"


[[2]]
An object of class …
Run Code Online (Sandbox Code Playgroud)

oop r parameter-passing pass-by-reference

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

php shuffle()返回一个项目

任何人都知道为什么shuffle()只返回1项?

使用时:

$array2 = shuffle($array1);
Run Code Online (Sandbox Code Playgroud)

使用以下数组($ array1):

Array
(
    [0] => 1
    [1] => 5
    [2] => 6
    [3] => 7
    [4] => 8
    [5] => 10
    [6] => 11
    [7] => 12
    [8] => 13
    [9] => 14
)
Run Code Online (Sandbox Code Playgroud)

输出:

print_r($array2);
Run Code Online (Sandbox Code Playgroud)

很简单:1

任何想法为什么它不仅不会洗牌阵列,而是淘汰阵列中剩余的9个项目?

谢谢!

php

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

在T-SQL中如何显示给定表名的列?

我试图列出我选择的任何Adventureworks表中的所有列.我可以执行哪些T-sQL语句或存储过程来查看所有列的列表?我想使用我的C#Web应用程序输入一个输入参数= table_name,然后获取所有column_names的列表作为输出.现在我正在尝试执行sp_columns存储过程,但是我不能只使用select和exec组合的一列.有人知道怎么做这个吗?

感谢大家的所有回复,但没有一个答案符合我的要求.让我更多地为您解释我的问题.下面的查询返回我需要的内容.但我的问题是将这个逻辑合并到一个带有输入参数的SP中.所以这是成功的SQL语句:

select col.name from sysobjects obj inner join syscolumns col 
    on obj.id = col.id
    where obj.name = 'AddressType' 
     order by obj.name
Run Code Online (Sandbox Code Playgroud)

目前我的SP看起来像:

CREATE PROCEDURE [dbo].[getColumnNames]
    @TableName VarChar(50)
    AS

    BEGIN
    SET NOCOUNT ON;
    SET @TableName = RTRIM(@TableName)
    DECLARE @cmd AS NVARCHAR(max)
    SET @cmd = N'SELECT col.name from sysobjects obj ' +
    'inner join syscolumns col on obj.id = col.id ' +
    'where obj.name = ' + @TableName
    EXEC sp_executesql @cmd
    END
Run Code Online (Sandbox Code Playgroud)

但我按上述方式运行

exec getColumnNames 'AddressType'
Run Code Online (Sandbox Code Playgroud)

它给了我错误:

Invalid column name …
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server exec adventureworks

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

在gcc中放置新内容

我需要找到一个解决方法,用于在g ++中放置new的bug.我现在修复了gcc-4.3但我必须支持版本4.2和4.1.例如,以下代码编译时出错

"错误:没有匹配函数来调用'operator new(long unsigned int,void*&)"

template<class T, template<typename> class Alloc> 
inline void* type_ctor()
{
    Alloc<T> a; void* p = a.allocate(1);
    new(p) T;
    return p;
}

.....

type_ctor<A, NewAllocator >();
Run Code Online (Sandbox Code Playgroud)

c++ gcc

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

如何清除Direct2D渲染目标以使其完全透明

我试图在一个看不见的HWND上绘制半透明的矩形.但是,使用ID2D1HwndRenderTarget :: Clear清除窗口只会使整个窗口变黑,所以当我在顶部绘制矩形时,它们看起来是半黑色的.

如果我没有Clear()并且没有绘制,那么窗口是不可见的,因为它应该是.Clear()是罪魁祸首; 但是,如果我不使用它,那么绘画就会非常糟糕.

这是我在WindowProc中使用的代码:

case WM_PAINT:
    // Begin drawing
    pRenderTarget->BeginDraw();
    pRenderTarget->SetTransform(D2D1::Matrix3x2F::Identity());

    // Clear the window
    pRenderTarget->Clear();

    // Paint the panel and its children
    D2DSurface()->StartPainting();
    {
        D2DSurface()->PaintTraverse(panel);
    }
    D2DSurface()->FinishPainting();

    // Finish drawing
    HRESULT hr = plat->pRenderTarget->EndDraw();
Run Code Online (Sandbox Code Playgroud)

提前致谢!

c c++ transparency hwnd direct2d

7
推荐指数
3
解决办法
8518
查看次数