java - 创建文件名时,单引号在java中自动被两个单引号替换

标签 java mysql openlaszlo

我在使用 MYSQL 在 java 中创建文件时遇到一个奇怪的问题。

我的代码:

String lChildSql = this.lSQLBucket.select("get.child.by.name")
                        .replace("LEFT").with(lLeft)
                        .replace("RIGHT").with(lRight)
                        .replace("LEVEL").with(lLevel + 1)
                        .replace("NAME").with(pName).get()
                    ResultSet lChildRs = lDB.Qry(lChildSql);

示例:如果我创建一个 pName raj'sek'har 的文件,并且它会自动创建为 raj"sek"har。

请帮我解决这个问题。

问候,

拉吉

最佳答案

未知用户所说的是这是正常行为。这就是 sql 处理单词内的单引号(撇号)的方式。

sql 对字符串使用单引号 - '这是一个字符串' - 但如果您的字符串包含单引号,则会导致问题 - '这不会起作用' - 因为字符串“提前结束”。

所以sql所做的就是用两个单撇号替换它,这是一个“转义序列”,表明实际上需要一个单撇号[原文如此]:'this'会正常工作'.

请注意,这仅用于显示。它并没有“真正”取代任何东西,当您检索数据时,一切都会好起来的。

someone else saying the same thing

关于java - 创建文件名时,单引号在java中自动被两个单引号替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9667145/

相关文章:

java - Apache Shiro 的存储权限

java - XML 解码期间的 NullPointerException

java - 使用带有 Kerberos 身份验证的 Cloudera 驱动程序的 JAVA 连接到 HIVE

php - 显示赞助商服务器不同的颜色不显示 php

使用 Flash Builder 调试 OpenLaszlo SWF 运行时应用程序和 Laszlo 基础类 (LFC)

eclipse-plugin - Eclipse 中的 Openlaszlo

java - 在Applet中接收输入流

php - 需要想法 : Selecting rows in table

java - 保持数据库连接始终处于 Activity 状态的正确方法

javascript - Openlaszlo WebSocket 不工作