سؤال

لديّ طاولة مزعجة لن تحذفها وهي تحافظ على تحديث بيئة ديف :(

أعلم أن هذا الجدول موجود. مثال...

mysql> select * from uc_order_products_qty_vw limit 10;
+-----+-------------+---------+---------+---------+---------+
| nid | order_count | avg_qty | sum_qty | max_qty | min_qty |
+-----+-------------+---------+---------+---------+---------+
| 105 |           1 |  1.0000 |       1 |       1 |       1 | 
| 110 |           5 |  1.0000 |       5 |       1 |       1 | 
| 111 |           1 |  1.0000 |       1 |       1 |       1 | 
| 113 |           5 |  1.0000 |       5 |       1 |       1 | 
| 114 |           1 |  1.0000 |       1 |       1 |       1 | 
| 115 |           1 |  1.0000 |       1 |       1 |       1 | 
| 117 |           2 |  1.0000 |       2 |       1 |       1 | 
| 119 |           3 |  1.3333 |       4 |       2 |       1 | 
| 190 |           5 |  1.0000 |       5 |       1 |       1 | 
| 199 |           2 |  1.0000 |       2 |       1 |       1 | 
+-----+-------------+---------+---------+---------+---------+
10 rows in set (0.00 sec)

ومع ذلك عندما أحاول إسقاطها ...

mysql> DROP TABLE IF EXISTS uc_order_products_qty_vw;
Query OK, 0 rows affected, 1 warning (0.00 sec)

لا ينجح ، الجدول لا يزال موجودًا ، ويقول التحذير هذا ...

mysql> show warnings limit 1;
+-------+------+------------------------------------------+
| Level | Code | Message                                  |
+-------+------+------------------------------------------+
| Note  | 1051 | Unknown table 'uc_order_products_qty_vw' | 
+-------+------+------------------------------------------+
1 row in set (0.00 sec)

الشعور بالغبطة جدا.

هل كانت مفيدة؟

المحلول

انطلاقا من الاسم قد يكون وجهة نظر. جرب استخدام عرض إسقاط:

DROP VIEW uc_order_products_qty_vw

جدول إسقاط لا يعمل في وجهات النظر:

CREATE VIEW test_vw AS SELECT 1;
SELECT * FROM test_vw;    -- works
DROP TABLE test_vw;       -- error: Unknown table 'test_vw'
DROP VIEW test_vw;        -- works
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top