问题列表 - 第8249页

将一个充满逗号分隔值的varchar传递给SQL Server IN函数

使用Like和In 复制
动态SQL逗号分隔值查询
参数化查询

我有一个SQL Server存储过程,我想将一个varchar逗号分隔的值传递给一个IN函数.例如:

DECLARE @Ids varchar(50);
SET @Ids = '1,2,3,5,4,6,7,98,234';

SELECT * 
FROM sometable 
WHERE tableid IN (@Ids);
Run Code Online (Sandbox Code Playgroud)

这当然不起作用.我收到错误:

将varchar值'1,2,3,5,4,6,7,98,234'转换为数据类型int时转换失败.

如何在不诉诸构建动态SQL的情况下完成此任务(或相对类似的东西)?

sql t-sql sql-server sql-in

53
推荐指数
9
解决办法
17万
查看次数

如何使用subversion一次提交多个目录?

我尝试使用svn ci dir/a dir/b -m"我的评论",但这不起作用.我还使用svn ci dir/a/*dir/b/*-m"我的评论",它也不起作用.

我知道你可以指定多个文件,但是如何告诉subversion检查这些文件夹中的所有修改过的文件?我主要想这样做,以便我的所有更改都可以进入一个版本.我可以一次签入一个目录,但最终会给每个目录不同的修订版本.

svn commit checkin

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

在流上腌制C#MD5 ComputeHash

我看不出任何方法来加密MD5.ComputeHash(Stream).我错过了一些将字节注入HashAlgorithm的方法吗?

我在执行流计算之前尝试执行ComputeHash(byte []),但不出所料,它没有任何效果.任何想法(除了修改文件)?

谢谢你的时间.

附录 只是为了更具体一点,我想使用一个流来获取一个我不想加载到内存中的大文件的哈希值.

FileInfo myFI= new FileInfo("bigfile.dat");
FileStream myIFS = piFile.OpenRead();
MD5 md5 = MD5.Create();
byte[] hash = md5.ComputeHash ( myIFS );
myIFS.Close ();
Run Code Online (Sandbox Code Playgroud)

c# hash md5 stream salt

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

使用数据填充ResultSet的简便方法

我想模拟一个ResultSet.认真.我正在重构一个从ResultSet中解析数据的大型复杂代码,我希望我的代码行为相同.所以,我需要为被重构的部分编写一个单元测试,以便能够对此进行测试.

谷歌搜索后,我想出了两个想法:

  1. 使用EasyMock,编写looooong模拟序列.非常糟糕的解决方案:难以添加初始数据,难以更改数据,大测试调试的好处.
  2. 使用Apache Derby或HSQLDB创建内存数据库,从文件或String数组中填充它,使用一些神奇的InMemoryDBUtils.query(sql)进行查询.然后使用该ResultSet.不幸的是,我没有找到任何神奇的InMemoryDBUtils快速编写测试:-).IBM文章"使用Derby进行持久性的隔离单元测试"似乎对我需要的东西很好,但是......

第二种方法看起来更容易,也更容易支持.

你有什么建议来创建这样的模拟?(尽管医生,当然:-)?我错了眉毛一些银弹吗?可能,DBUnit是这个的工具吗?

java unit-testing jdbc resultset mocking

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

通过重用基本Bézier曲线函数绘制Bézier曲线的一部分?

假设我正在使用一些图形API,它允许我通过指定4个必要点来绘制贝塞尔曲线: 开始,结束,两个控制点.

我可以重复使用此功能来绘制"原始"曲线的x%(通过调整控制点和终点)吗?

还是不可能?

不必要的信息,如果有人关心:

  • 我需要用整个东西来绘制
    具有不同颜色和/或线条样式的原始贝塞尔曲线的每一个n%
  • 我正在使用Java的Path2D绘制贝塞尔曲线:

    Path2D p = new GeneralPath();
    p.moveTo(x1, y1);
    p.curveTo(bx1, by1, bx2, by2, x2, y2);
    g2.draw(p);
    
    Run Code Online (Sandbox Code Playgroud)

math graphics drawing coordinates

13
推荐指数
2
解决办法
4525
查看次数

如何正确获取presentationLayer的当前变换?

我试过这个:

CATransform3D rotationTransform = [[self.layer presentationLayer] transform];
Run Code Online (Sandbox Code Playgroud)

这将不起作用,因为编译器将抛出警告和错误:

警告:找到多个方法"-transform".错误:初始化程序无效.

那么我试过这个:

CATransform3D rotationTransform = [[self.layer presentationLayer] valueForKey:@"transform"];
Run Code Online (Sandbox Code Playgroud)

错误:初始化程序无效.

这有什么问题?

iphone core-animation

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

在 Windows 中区分管道和文件

在 Unix 上,一切都是一个文件,因此您可以将文件 i/o 函数与管道、文件、套接字等一起使用。但在 windows 上,您使用的 api 取决于您拥有的 i/o HANDLE 的类型。

我的问题是:给定一个 HANDLE,你如何确定底层类型是什么?例如,我有一个 HANDLE,它要么是真实文件,要么是命名/匿名管道。我想知道是否可以在此 HANDLE 上调用 PeekNamedPipe。

windows file pipe handle

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

为什么程序不杀死并重新启动explorer.exe?

我知道很多程序一旦安装(或对注册表的更新),他们需要一些东西来刷新值.这可以通过杀死并重新启动explorer.exe来完成,但是大部分都不会这样做,而是要求您重新启动计算机.一个需要很长时间的过程.

我目前正在编写一个仅供技术人员使用的工具,它会对需要重新启动(或重新启动explorer.exe)的注册表进行一些更改才能生效.我不必担心我的用户被explorer.exe重新启动就吓坏了,所以这不是问题.

在做这件事之前我还应该考虑什么?为什么其他应用程序会告诉您重启而不是更快的重启资源管理器?有安全理由吗?还是只是习惯?

windows

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

Flash调试播放器和常规播放器之间有什么区别?

某些应用和IDE建议安装Adobe Flash播放器的调试版本.我知道即使没有通过测试电影运行Flash,这也允许查看跟踪语句,但还有什么不同?什么?

另外,如何查看正在运行的调试播放器而不是常规播放器?

谢谢!

flash

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

如何将byte []分配给记录

在C++中,它是这样完成的:

tPacket * packet = (tPacket *)data; //data is byte[] array; tPacket is a structure
Run Code Online (Sandbox Code Playgroud)

在C#中:

tPacket t = new tPacket();
GCHandle pin = GCHandle.Alloc(data, GCHandleType.Pinned);
t = (tPacket)Marshal.PtrToStructure(pin.AddrOfPinnedObject(), typeof(tPacket));
pin.free();
Run Code Online (Sandbox Code Playgroud)

数据是在通过TCP接收数据包后用作接收缓冲区的字节数组.该代码将数据放入tPacket(结构)的实例中,以便稍后可以访问该结构.

如何在Delphi中完成?

delphi

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