有没有办法在sqlite3中创建一个具有默认为"now"的日期时间列的表?
以下语句返回语法错误:
create table tbl1(id int primary key, dt datetime default datetime('now'));
Run Code Online (Sandbox Code Playgroud)
更新:这是Sky Sanders提供的正确ddl :
create table tbl1(id int primary key, dt datetime default current_timestamp);
Run Code Online (Sandbox Code Playgroud) 我的工作中有一个Java Web应用程序,我想简化我们部署到DEV,QA和PROD环境的方式.
应用程序在启动时读取一系列属性,dev,qa和prod的属性文件不同.每当我想部署到某个环境时,我都会将特定于环境的属性文件放到我的app文件夹中,构建war,然后将其部署到三个tomcat 5.5服务器之一.
我想要做的是必须有一个.war,它具有所有环境的属性,并让应用程序在初始化过程中询问Web服务器,以确定应用程序所处的环境,以及要加载的属性.是否有一种简单的方法(或者,这是一种标准的方式)?
偶尔使用MercurialEclipse插件执行rebase时,我的存储库会被抛入奇怪的状态.它将陷入"重新定位"状态,但当我尝试中止rebase(例如"hg rebase -a")时,我收到此错误消息:
中止:未知修订版' xxxx '!
其中xxxx是修订哈希.通常在这一点上,我已经放弃了执行rebase的所有希望 - 我只是想回到我的存储库没有被搞砸的更快乐的时候.到目前为止,我的解决方案是核对我的项目目录并再次克隆它.是否有一个不那么激烈的解决方案?
我正在使用一个与ajax查找绑定的JQuery UI自动完成字段,有时可能会相当慢.偶尔远离文本输入字段的用户将标签之后阿贾克斯查询发起,但之前的AJAX调用返回.发生这种情况时,即使文本输入不再具有焦点,也会显示自动完成弹出窗口,并且解除弹出窗口的唯一方法是选择一个项目(而不是标记到另一个字段).
事实上,这个jquery ui演示表现出相同的行为(例如在文本字段中输入'ariz',等待'搜索'动画出现,然后在返回任何结果之前将tab标记出字段.
一个有效的解决方案(但感觉就像一个黑客)是检查ajax的成功回调,看看文本字段是否仍然具有焦点,如果不是用空列表调用response(),例如:
$( "#city" ).autocomplete({
var elem = this.element;
source: function( request, response ) {
$.ajax({
url: "http://ws.geonames.org/searchJSON",
data: {name_startsWith: request.term},
success: function( data ) {
if(!$(elem).is(':focus') {
response({});
return;
}
response( $.map( data.geonames, function( item ) {
return {
label: item.name + (item.adminName1 ? ", " + item.adminName1 : "") + ", " + item.countryName,
value: item.name
}
}));
}
});
}
});
Run Code Online (Sandbox Code Playgroud)
有更优雅的解决方案吗?理想情况下,一旦用户选中文本输入字段,我就想取消ajax请求.
我正在学习Hibernate Search Query DSL,我不知道如何使用AND或OR等布尔参数构造查询.
例如,假设我想要返回firstName值为"bill"或"bob"的所有人员记录.
在hibernate文档之后,一个示例使用bool()方法w /两个子查询,例如:
QueryBuilder b = fts.getSearchFactory().buildQueryBuilder().forEntity(Person.class).get();
Query luceneQuery = b.bool()
.should(b.keyword().onField("firstName").matching("bill").createQuery())
.should(b.keyword().onField("firstName").matching("bob").createQuery())
.createQuery();
logger.debug("query 1:{}", luceneQuery.toString());
Run Code Online (Sandbox Code Playgroud)
这最终产生了我想要的lucene查询,但这是在hibernate搜索中使用布尔逻辑的正确方法吗?"should()"是否等同于"OR"(类似地,"must()"对应于"AND")?
此外,以这种方式编写查询感觉很麻烦.例如,如果我有一个firstNames的集合可以匹配怎么办?这种类型的查询首先是DSL的良好匹配吗?
当我在.m2/settings.xml文件中指定我的存储库时,我无法让Maven下载依赖项.但是,当我将存储库名称添加到我的pom时,Maven会下载这些依赖项.
具体来说,我正在尝试编译一些hibernate示例项目,并且我已经在说明中读到了我应该将以下存储库添加到我的pom或settings.xml中:
<repositories>
<repository>
<id>jboss-public-repository-group</id>
<name>JBoss Public Repository Group</name>
<url>http://repository.jboss.org/nexus/content/groups/public/</url>
<layout>default</layout>
<releases><enabled>true</enabled><updatePolicy>never</updatePolicy></releases>
<snapshots><enabled>true</enabled><updatePolicy>never</updatePolicy></snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>jboss-public-repository-group</id>
<name>JBoss Public Repository Group</name>
<url>http://repository.jboss.org/nexus/content/groups/public/</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</pluginRepository>
</pluginRepositories>
Run Code Online (Sandbox Code Playgroud)
当我将片段放在项目的pom.xml中时,一切正常,但是当我尝试将它放在settings.xml中时,我收到此错误:
org.hibernate的POM:hibernate-core:jar:3.6.1.Final缺失,没有可用的依赖信息
我有什么想法可能做错了吗?