【问题标题】:Converting a string into array in phpGrid for inserting into postgresql将字符串转换为 phpGrid 中的数组以插入到 postgresql
【发布时间】:2017-02-16 12:56:18
【问题描述】:

我正在尝试使用带有 PostgreSQL 数据库的 phpGrid 将字符串插入到整数数组中。在网格内显示数据以供查看时,我必须将数组转换为字符串以删除括号,但是当我尝试在添加字段时将字符串转换回数组时,它不会转换为格式 {1,2 ,3,4}。我正在使用 PostgreSQL 提供的 string_to_array 函数来执行此操作。这是我正在使用的代码:

$dg = new C_DataGrid("SELECT array_to_string(field, ', ') as field_to_string FROM tblname");

这按预期工作(从正在显示的数据中删除 { })但是当我尝试插入时,这个查询看起来像这样:

INSERT INTO tblname (field_to_string) VALUES ('1,2,3,4');

这就是我要插入的内容(转换为数组)

$arrFields['field_to_string'] = "string_to_array('" . $arrFields['field_to_string'] . "', ',')";

$sqlCrud = $db->db->GetInsertSQL($rs, $arrFields, get_magic_quotes_gpc(), true);

任何帮助将不胜感激。

谢谢。

【问题讨论】:

    标签: php postgresql phpgrid


    【解决方案1】:

    你能通过将DEBUG 设置为true 来回显sqlCrud 并找出SQL Insert 语句吗?很可能 Insert 语句在转换过程中出错。

    您的 PostgreSql 应该类似于以下内容:

    INSERT INTO tblname(field_to_string) VALUES ('{1,2,3,4}'::varchar[])
    

    您可以在此处查看带有数组到字符串转换示例的 PostGreSql:http://www.postgresonline.com/journal/archives/228-PostgreSQL-Array-The-ANY-and-Contains-trick.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-09-28
      • 2015-07-30
      • 2014-12-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多