我有一个使用特殊字符的Sql statament(例如:('),(/),(&)),我不知道如何在我的VB.NET代码中编写它们。请帮我。感谢。
答案 0 :(得分:4)
找出字符的Unicode代码点(来自http://www.unicode.org),然后使用ChrW将代码点转换为字符。 (把它放在另一个字符串中,使用连接。我有点惊讶VB没有转义序列,但我们去了。)
例如,对于欧元符号(U + 20AC),您可以写:
Dim euro as Char = ChrW(&H20AC)
将此字符直接放入源代码中的优势在于您的源代码保持“纯粹的ASCII” - 这意味着您不会遇到任何其他程序试图读取它,区分它等的任何奇怪问题缺点是当然在代码中很难看到符号。
答案 1 :(得分:2)
最常见的方式似乎是附加Chr(34)形式的字符... 34代表双引号字符。字符代码可以从windows程序“charmap”中找到...只是windows / Run ...并输入charmap
答案 2 :(得分:1)
'字符可以加倍以使其成为字符串,例如
lSQLSTatement = "Select * from temp where name = 'fred''s'"
将搜索name = fred's
的所有记录答案 3 :(得分:1)
如果要传递要作为SQL语句处理的字符串,请尝试将字符加倍。
"SELECT * FROM MyRecords WHERE MyRecords.MyKeyField = ""With a "" Quote"" "
''double也适用于其他特殊字符。
答案 4 :(得分:0)
三点:
1)您给出的示例字符不是特殊字符。它们可直接在键盘上使用。只需按相应的键即可。
2)要键入键盘上没有相应键的字符,请使用:
Alt + (特殊字符的ASCII码编号)
例如,要键入¿,请按 Alt 并键入 168 ,这是该特殊字符的ASCII代码。
您可以使用此方法在几乎任何程序中键入特殊字符,而不仅仅是VB.Net文本编辑器。
3)你可能正在寻找的是字符串中所谓的“转义”字符。在SQL查询字符串中,只需在每个字符前放置 \ 即可。应该这样做。
答案 5 :(得分:0)
Chr()可能是最受欢迎的。 如果要生成unicode字符,可以使用ChrW() ControlChars类包含一些特殊和“不可见”的字符,加上引号 - 例如,ControlChars.Quote