小编Rev*_*nzo的帖子

如何在 JDBC PreparedStatement 中设置公式

我有一个 PreparedStatement,用于插入一堆包含大量列数据的行。但是,对于其中一列(时间戳),如果值为空,我希望它getDate()在服务器上执行。

我知道我可以这样做,new Date()但这不会真正起作用,因为由于旧报告,它需要与自动插入值的另一列完全匹配。

假设我无法更改架构并向列添加默认值。

有什么方法可以将公式设置为 PreparedStatement 中的参数?

编辑添加:这基本上是目前的情况:

PreparedStatement statement = connection.prepareStatement("insert into row (name, starttime) values (?, ?)")
statement.setString(1, name);
statement.setDate(2, date);
Run Code Online (Sandbox Code Playgroud)

我想要的是,类似于:

PreparedStatement statement = connection.prepareStatement("insert into row (name, starttime) values (?, ?)")
statement.setString(1, name);
if(date != null)
  statement.setDate(2, date);
else
  statement.setFormula(2, "getdate()");
Run Code Online (Sandbox Code Playgroud)

我明白那个:

if(date == null)
  date = new Date();
Run Code Online (Sandbox Code Playgroud)

本质上是一样的,但在我们的例子中,它真的不是。

java sql jdbc prepared-statement

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

将时间值设置为数据帧单元格

我正在尝试将时间值设置为数据框:

ps = data.frame(t(rep(NA, 2)))
ps[1,1] = strptime('10:30:00', '%H:%M:%S')
Run Code Online (Sandbox Code Playgroud)

但我得到错误:

provided 9 variables to replace 1 variables
Run Code Online (Sandbox Code Playgroud)

因为时间值是R中的列表(?),它认为我正在尝试设置9列,而我真的只想将一列设置为该类.

我该怎么做才能正确设置?

r dataframe

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

解决Java JIT错误

我们似乎在Java环境中遇到了一个奇怪的错误.我们现在有两次相同的"不可能发生"的例外; 在一个案例中,问题在运行过程中的48分钟内发生了42,551次,然后自发地自行清除.

失败的代码由此行触发:

return String.format("%1d%XY%d", source, System.currentTimeMillis(), quoteID);
Run Code Online (Sandbox Code Playgroud)

在哪里int source = 0和long quoteID = 44386874(例如).

例外是:

java.util.UnknownFormatConversionException: Conversion = 'd'
        at java.util.Formatter$FormatSpecifier.conversion(Formatter.java:2605)
        at java.util.Formatter$FormatSpecifier.<init>(Formatter.java:2633)
        at java.util.Formatter.parse(Formatter.java:2479)
        at java.util.Formatter.format(Formatter.java:2413)
        at java.util.Formatter.format(Formatter.java:2366)
        at java.lang.String.format(String.java:2770)
Run Code Online (Sandbox Code Playgroud)

检查代码'd'不应该引发此异常.

我们提出的最佳解释是JIT编译器生成了错误的字节码,但在随后的重新JIT中,它编写了良好的代码.

任何人都有办法解决/诊断这样的问题吗?

罗杰.

java jit

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

Grails多对多关联并防止级联

因此,我们在客户和角色之间建立了多对多的关系,设置为:

Customer {
  static hasMany = [roles: Role]
}

Role {
  static hasMany = [customer: Customer]
  static belongsTo = Customer
}
Run Code Online (Sandbox Code Playgroud)

Role对象只有一个名称和一组权限.我们不希望从Customer - > Role级联保存,因为Role只能直接修改.

我补充说:

static mapping = {
  roles cascade: 'none'
}
Run Code Online (Sandbox Code Playgroud)

但是,每当我创建客户时,角色表也会更新.除了版本号增加外,没有任何变化.

我是否遗漏了需要设置的其他内容...是否存在Grails中设置了多对多关系和级联的错误...还是有其他方法可以阻止角色每次都更新?

grails many-to-many hibernate-cascade

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

iOs:为什么IBOutlets在[[alloc] init]之后没有接线,但是在viewDidUnload:之后被调用了

我有一个简单的选择UINavigationViewController,当选择某个项目时,会创建一个模态视图,其中包含一个UIImageView(PostcardViewController).但是,如果我打电话

PostcardViewController *postcardViewController = [[PostcardViewController alloc] init];
postcardViewController.imageView.image = image; 
[self.navigationController presentModalViewController:postcardViewController animated:YES];
Run Code Online (Sandbox Code Playgroud)

postcardViewController.imageView是nill,图像永远不会显示出来.如果我切换后两行,并使它:

PostcardViewController *postcardViewController = [[PostcardViewController alloc] init];
[self.navigationController presentModalViewController:postcardViewController animated:YES];
postcardViewController.imageView.image = image; 
Run Code Online (Sandbox Code Playgroud)

postcardViewController.imageView已设置,显示正常.所有内容都在Interface Builder中连接,PostcardViewController中没有任何特定代码.通过调试,我发现,viewDidLoad在调用[ ]被调用后,imageView被连接起来,并且viewDidLoad在调用[ presentModalViewController] 时调用了[ ].

为什么这样,我也在这里做错了什么?我想我应该在实际显示之前设置整个视图,但是到目前为止,我必须先显示它才能完全设置它.

iphone interface-builder ios

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

使用类似于SQL连接的不同数据框中的内容来操作数据框

假设我有一个包含内容的数据框:

Trial Person Time
1     John   1.2
2     John   1.3
3     John   1.1
1     Bill   2.3
2     Bill   2.5
3     Bill   2.7
Run Code Online (Sandbox Code Playgroud)

和另一个包含内容的数据框:

Person Offset
John   0.5
Bill   1.0
Run Code Online (Sandbox Code Playgroud)

我想根据第二个适当的值修改原始帧.我可以用任何其他语言或SQL轻松地完成这项工作,我确信我可以管理使用for循环和什么,但是我在R中看到的其他所有东西,我猜它有一个特殊的语法来做这个-衬垫.那么,如果是这样,怎么样?如果没有,你能说明如何使用循环完成它.我还没有真正开始学习R中的循环,因为它简单地提取和操作任何值都有惊人的东西.

作为参考,输出将:

Trial Person Time
1     John   0.7
2     John   0.8
3     John   0.6
1     Bill   1.3
2     Bill   1.5
3     Bill   1.7 
Run Code Online (Sandbox Code Playgroud)

r dataframe

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

有哪些不同的 SQL Server 索引类型?

在 Squirrel 中获取有关我们表的信息以整数形式返回索引类型。我在 Microsoft 的站点上找到了索引类型,但它没有映射到数值。

我在 Linux 上,所以我不能完全启动 SQL Management Studio。是否有任何地方将数字值实际映射到 Microsoft 的命名类型?

具体来说,我想知道索引类型 1 和索引类型 3 是什么。

sql-server indexing

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

没有历史的Mercurial克隆

我正在尝试下载大型开源项目的源代码,所以我可以看一下.

它说:

hg clone http://server/path
Run Code Online (Sandbox Code Playgroud)

然而,这是永远的(我假设因为它是一个大项目).我真的不关心变更集; 我只想要头,我不会做任何事情.

没有其他一切,我有什么方法可以做到这一点吗?

mercurial clone

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

Python闭包和替换周围的范围

我知道在使用Groovy闭包时,我可以更改闭包,delegate因此可以在外部定义闭包内的函数调用.

我可以在Python中做类似的事情吗?

具体来说,如果您采用以下代码:

def configure():
  build()

def wrap(function):
  def build():
    print 'build'

  function()

wrap(configure)
Run Code Online (Sandbox Code Playgroud)

我想要打印'build'(只进行更改wrap()).

一些说明:

我不想传递函数,configure()因为可能有很多函数可以被调用configure().

我也不想全局定义它们,因为可能会有大量可以调用的函数,configure()我不想污染全局命名空间.

python closures

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