【问题标题】:Error Code: 1100. Table 'product_group' was not locked with LOCK TABLES错误代码:1100。表 'product_group' 未使用 LOCK TABLES 锁定
【发布时间】:2020-06-17 23:09:56
【问题描述】:

我在这里有点困惑。据我所知,product_group 表已被锁定。

如果我删除 LOCK 部分,代码将按预期执行并返回数据。

希望有人能发现一个明显的错误!

我还看到错误消息指的是“product_group”,因为我认为它指的是“1_product_group”,除非我弄错了。

不确定我可以在这里提供哪些其他信息。

LOCK TABLE 
1_products p READ,
1_packages g READ,
1_stock READ,
1_products_variants READ,
1_products_variants_plu READ,
1_product_group product_group READ,
1_product_group_eit READ,
1_products_packages_media a READ,
1_related r READ,
1_makes m READ,
1_offer_items i READ,
1_url_key url_key READ,
1_headline_group h READ,
supplier_records READ,
addresses READ;

SELECT 
    p.id,
    plu_code,
    p.make,
    model,
    price_each,
    price_pair,
    price_each_inc,
    price_pair_inc,
    rrp,
    rrp_inc,
    cover_type,
    cover_value_each,
    cover_value_pair,
    cover_value_each_inc,
    cover_value_pair_inc,
    cost,
    vat_rate,
    fk_group_id,
    (SELECT 
            fk_group_id
        FROM
            1_product_group product_group
        WHERE
            product_group.id = p.fk_group_id),
    (SELECT 
            position
        FROM
            1_product_group product_group
        WHERE
            product_group.id = p.fk_group_id),
    fk_web_groups,
    fk_condition_id,
    warranty,
    added,
    modified,
    discontinued,
    web_model,
    url_key.url,
    supp_code,
    supp_ref,
    barcode,
    special,
    web_vis_each,
    web_vis_pair,
    web_newitem,
    web_newitem_actioned,
    allow_sale,
    shop_feed,
    p.is_active,
    p.active_from,
    p.active_to,
    mpn,
    no_gtin,
    gtin,
    aka,
    headings,
    p.description,
    model_number,
    spec,
    txt_bul,
    txt_head,
    weight,
    width,
    depth,
    height,
    prod_speech,
    ovr_google_taxonomy,
    pos_text,
    search_name,
    points_mult,
    iff_max_term,
    fk_headlines_id,
    headline,
    each_cap,
    pair_cap,
    no_pack,
    rev_ent,
    title,
    meta_key,
    meta_des,
    default_fk_products_packages_media_id,
    serial_scan,
    p.sn,
    m.id,
    m.speech,
    h.id,
    h.description,
    (SELECT 
            company
        FROM
            addresses
        WHERE
            id = (SELECT 
                    fk_addresses_id
                FROM
                    supplier_records
                WHERE
                    supp_number = p.supp_code))
FROM
    1_products p
        LEFT JOIN
    1_makes m ON p.make = m.make
        LEFT JOIN
    1_headline_group h ON p.fk_headlines_id = h.id
        LEFT JOIN
    1_url_key url_key ON url_type = 1 AND fk_id = p.id
WHERE
    p.id = 11527;

UNLOCK TABLES;

【问题讨论】:

  • 谢谢。我想我将不得不使用 LEFT JOIN 进行修改

标签: mysql


【解决方案1】:

每个别名在整个查询中必须是唯一的。而提到的别名被使用了两次。

LOCK TABLE 
1_products p READ,
1_packages g READ,
1_stock READ,
1_products_variants READ,
1_products_variants_plu READ,
1_product_group product_group READ,
/* fix part 1 */
1_product_group product_group_1 READ,
/* end fix */
1_product_group_eit READ,
1_products_packages_media a READ,
1_related r READ,
1_makes m READ,
1_offer_items i READ,
1_url_key url_key READ,
1_headline_group h READ,
supplier_records READ,
addresses READ;

SELECT 
    p.id,
    plu_code,
    p.make,
    model,
    price_each,
    price_pair,
    price_each_inc,
    price_pair_inc,
    rrp,
    rrp_inc,
    cover_type,
    cover_value_each,
    cover_value_pair,
    cover_value_each_inc,
    cover_value_pair_inc,
    cost,
    vat_rate,
    fk_group_id,
    (SELECT 
            fk_group_id
        FROM
            1_product_group product_group
        WHERE
            product_group.id = p.fk_group_id),
    (SELECT 
            position
        FROM
/* fix part 2 */
            1_product_group product_group_1
        WHERE
            product_group_1.id = p.fk_group_id),
/* end fix */
    fk_web_groups,
    fk_condition_id,
    warranty,
    added,
    modified,
    discontinued,
    web_model,
    url_key.url,
    supp_code,
    supp_ref,
    barcode,
    special,
    web_vis_each,
    web_vis_pair,
    web_newitem,
    web_newitem_actioned,
    allow_sale,
    shop_feed,
    p.is_active,
    p.active_from,
    p.active_to,
    mpn,
    no_gtin,
    gtin,
    aka,
    headings,
    p.description,
    model_number,
    spec,
    txt_bul,
    txt_head,
    weight,
    width,
    depth,
    height,
    prod_speech,
    ovr_google_taxonomy,
    pos_text,
    search_name,
    points_mult,
    iff_max_term,
    fk_headlines_id,
    headline,
    each_cap,
    pair_cap,
    no_pack,
    rev_ent,
    title,
    meta_key,
    meta_des,
    default_fk_products_packages_media_id,
    serial_scan,
    p.sn,
    m.id,
    m.speech,
    h.id,
    h.description,
    (SELECT 
            company
        FROM
            addresses
        WHERE
            id = (SELECT 
                    fk_addresses_id
                FROM
                    supplier_records
                WHERE
                    supp_number = p.supp_code))
FROM
    1_products p
        LEFT JOIN
    1_makes m ON p.make = m.make
        LEFT JOIN
    1_headline_group h ON p.fk_headlines_id = h.id
        LEFT JOIN
    1_url_key url_key ON url_type = 1 AND fk_id = p.id
WHERE
    p.id = 11527;

UNLOCK TABLES;

【讨论】:

    猜你喜欢
    • 2020-07-27
    • 2014-10-20
    • 1970-01-01
    • 1970-01-01
    • 2013-02-24
    • 2023-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多