首页  >  问答  >  正文

如何使用 phpMyAdmin 或 sql 添加类型为数组的列

如何使用 phpMyAdmin 添加类型为数组的列 知道 更改表名添加列listid整数数组; 更改表名添加列listid整数[]; 不工作

P粉012875927P粉012875927206 天前431

全部回复(1)我来回复

  • P粉764003519

    P粉7640035192024-03-27 20:40:13

    正如评论中提到的,数组不是类型。您可以选择使用一个单独的表来保存数组中的元素,并让它们有一个引用原始表的外键,或者每次将数组解析为字符串并将其存储为文本,具体取决于您的需要。

    CREATE TABLE orders (
      id INT NOT NULL PRIMARY KEY,
      description TEXT,
      reference TEXT
      -- This is where you'd want to add your list of order lines
    );
    
    -- Instead, we'll create an orderline table referring back to the orders
    CREATE TABLE orderlines (
      id INT NOT NULL PRIMARY KEY,
      description TEXT,
      order_id INT REFERENCES orders(id)
    );
    

    现在您可以将数组值(我现在假设为订单行)放入它们自己的单独表中。要查询它们,你可以这样做

    SELECT * FROM orders
    LEFT JOIN orderlines ON orderlines.order_id = orders.id;
    

    您可以使用子查询来足够聪明地返回一个数组,尤其是在您的应用程序中。

    回复
    0
  • 取消回复