我是新手,apache derby
似乎无法工作
CREATE TABLE IF NOT EXISTS table1 ...
可以在MySql
等程序中实现。'Syntax error: Encountered "NOT" at line 1, column 17.'
当我尝试SQL
在Java
程序中运行此语句时,出现了。
我在文档页面中检查了Derby Db Create
Statements
,但是找不到这样的选择。
创建表,捕获SQLException
并检查SQL状态代码。
完整的错误代码列表可以在这里
找到,
但我找不到
您需要的代码是Table <value> already exists
;大概是
X0Y68
。
X0Y32
。
只需运行一次代码并打印错误代码。不要忘记添加测试以确保代码有效。这样,您可以捕获错误代码中的更改(不应发生…)。
在我的项目中,我通常添加带有静态方法的帮助程序类,这样我可以编写:
} catch( SQLException e ) {
if( DerbyHelper.tableAlreadyExists( e ) ) {
return; // That's OK
}
throw e;
}
另一个选择是SELECT
对表运行a 并检查状态代码(应为42X05
)。但这是您需要发送的第二条命令,它不提供任何其他信息。
更糟糕的是,它可能会由于“表不存在”以外的其他原因而失败,因此“创建并忽略错误”是更好的IMO。
问题内容: 我很沮丧,我不知道该怎么做。 基本上,我只想创建一个表,但是如果它存在,则需要将其删除并重新创建,而不是将其截断,但是如果不存在,则可以创建它。 有人可以帮忙吗? 谢谢乔治 问题答案: 放在tablename您的发言之前。 该语句将删除该表(如果存在),但如果不存在则不会引发错误。
问题内容: 我正在尝试创建表(如果尚不存在)。我目前正在检查它是否首先存在,并且该查询是否不返回任何内容,然后插入。有没有一种方法可以只检查同一条语句,因此我不必将其分解为单独的查询? 这就是我目前所拥有的。 这是我要的东西。 问题是,您不能在语句中添加一个。 问题答案: 是的,Oracle没有该功能真是可惜。我敢肯定会有一天。在此之前,如果您想编写一个PL / SQL包装器,为什么不那样做:
问题内容: 任何人都可以指出我仅在数据库中当前不存在表时才能使用的正确语法吗? 我目前正在编程Java GUI,以便连接到Oracle并在数据库上执行语句,我想知道是否将其实现为Java约束还是SQLPlus约束。 问题答案: 通常,检查表是否存在没有多大意义,因为不应在运行时创建对象,而应用程序应知道在安装时创建了哪些对象。如果这是安装的一部分,那么您应该知道过程中任何时候存在哪些对象,因此您无
问题内容: 我们计划将pdf生成实用程序从iText迁移到PDFBox(由于iText中的许可问题)。经过一些努力,我能够编写和定位文本,绘制线条等。但是创建带有嵌入在Table单元格中的文本的Tables是一个挑战,我遍历了文档,示例,Google,Stackoverflow找不到任何东西。想知道PDFBox是否提供本机支持来创建带有嵌入式文本的表格。我的最后一招是使用此链接https://gi
问题内容: 查找音云轨道的持续时间。 我希望创建一个秒表功能,当您单击ID 时,该功能将开始计时毫秒,以便当该功能被“单击”一定时间后,if函数将执行某些操作。就我而言,替换图像。并且该函数将在再次单击时将其自身重置。 就像= - 我该如何设置 = ?这是毫秒吗? 问题答案: 您会看到演示代码只是一个开始/停止/重置毫秒计数器。如果您想按时进行奇特的格式化,那完全取决于您。这应该足以让您入门。 这
我们计划将pdf生成实用程序从iText迁移到PDFBox(由于iText中的许可问题)。通过一些努力,我能够书写和定位文本、绘制线条等。但创建表格时,将文本嵌入表格单元格是一项挑战,我浏览了文档、示例、Google、Stackoverflow都找不到任何东西。想知道PDFBox是否为创建带有嵌入文本的表提供本机支持。我最后的办法是使用此链接https://github.com/eduardohl