如何在存储过程中拆分逗号分隔的字符串?
如何将逗号分隔的字符串拆分为存储过程中的字符串并将它们插入到表字段中?
使用火鸟 2.5
How to split comma separated string into strings inside store procedure and insert them into a table field?
Using Firebird 2.5
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
我正在发布迈克尔的修改版本,也许它对某人有用。
变化是:
I am posting modified Michael's version, maybe it will be useful for someone.
The changes are:
以下是如何拆分字符串并将子字符串写入表中的示例:
Here a sample how to split the string and write the sub-strings into a table:
使用 <代码>位置
和
SUBSTRING
函数位于
同时< /code>
声明
Use
POSITION
and
SUBSTRING
functions in a
WHILE DO
statement我使用的类似解决方案,由 Jiri Cincura 不久前发布
http://blog.cincura.net/232347-tokenize- string-in-sql-firebird-syntax/
A similar solution I use, published a while ago by Jiri Cincura
http://blog.cincura.net/232347-tokenize-string-in-sql-firebird-syntax/
它看起来不错,除了一件事,在我的 Firebird 服务器中 Varchar 大小声明为 32000 会导致“超出实现限制”异常,所以要小心。我建议改用 BLOB SUB_TYPE TEXT :)
It looks good except one thing, in my Firebird server Varchar size declaration to 32000 cause "Implementation limit exceeded" exception so be careful. I suggest to use BLOB SUB_TYPE TEXT instead :)
这在 Informix 数据库上对我有用:
This works for me on an Informix DataBase: