使用PHP在SQL中编辑数组

我有一个数据库,其中有一个包含数组的列: DB Example

我需要一条更新te数组的SQL语句,以向其添加另一个值:

<script type='text/javascript'>
        $(function () {
            // only numbers are allowed
            $('#text_input_1').filter_input({ regex: '[0-9]' });
            $('#datet').mask("99/99/9999",{ placeholder: "/" });
        });
    </script>

如何使用PHP更新此数组?

什么创建数组:

UPDATE dbname SET array = ["737","669","newarraynumber"] WHERE id = 1
limian6666 回答:使用PHP在SQL中编辑数组

您的数组可能只是一个看起来像数组的字符串,我怀疑会在代码中的某个地方将其解析为一个字符串。我使用的SQL系统实际上没有数组功能。

要添加到字符串,您需要将字符取至右大括号,然后使用新的右大括号添加新值。我认为在SQL中最简单的方法是使用LEFT和LEN:

UPDATE dbname SET array = LEFT(array,LEN(array)-1)+ ',"' + 'newarraynumber' + '"]'

通过这种方式,您可以找到现有字符串的长度(LEN),从字符串的LEFT开始,并减去这么多负一个字符(不包括结尾的']'),并将其用作替换字符串的基础。

这绝对不是执行此操作的最佳方法,但是处理遗留代码中的决定(导致数据库外观如此),这将满足您的要求。

*这假定字符串“ array”的格式正确,并且看起来像您发布的内容,没有多余的空格,右括号是最后一个字符。我个人也将新的数组值与准备好的语句一起放入,通常是避免sql注入问题的好习惯,这就是为什么我没有一个字符串来插入值和它周围的字符的原因

本文链接:https://www.f2er.com/3107958.html

大家都在问