2009-04-02 5 views
11

कैसे स्तंभ नाम पाने के लिए Zend डीबी साथप्राप्त करने के लिए कैसे Zend डीबी के साथ स्तंभ नाम

+2

शायद आप एक छोटा सा वर्णन करना चाहिए कि तुम क्या ' करने की कोशिश कर रहे हैं ... Apikot का जवाब हालांकि एक प्रारंभिक बिंदु है। –

उत्तर

28

यह सही उत्तर, पुराने जवाब है गलत या पुराने हैं:

$cols = $table->info(Zend_Db_Table_Abstract::COLS); 
+3

अपने परिचय टेक्स्ट को दोबारा लिखो क्योंकि एसओ को 'बंपिंग' और प्रश्न/उत्तर नहीं पता पुराने नहीं माना जाता है। असल में एसओ एक विकी है और इसे अपडेट करना सबसे अच्छी चीजों में से एक है जो आप कर सकते हैं! +1 – markus

0

आप describeTable विधि इस्तेमाल कर सकते हैं

8
$metadata = $db->describeTable($tableName); 
$columnNames = array_keys($metadata); 

http://framework.zend.com/manual/en/zend.db.html#zend.db.adapter.list-describe

+0

यह वास्तव में 100% सही नहीं है क्योंकि $ मेटाडाटा एसोसिएटिव सरणी (तालिका के प्रत्येक कॉलम के लिए एक) का एक सहयोगी सरणी ('column_name' => array()) है। –

+0

$ db-> वर्णन करने योग्य ($ tableName, $ schema) में schame का नाम जोड़ें; , मुझे ऑरैकल का उपयोग करने में एक त्रुटि हुई जो पुराने कॉलम नाम लेता है अगर मैंने उन्हें बदल दिया था और सही कॉलम नाम वापस करने के लिए इसके लिए स्कीमा निर्दिष्ट करना था –

2

पिछला उत्तर केवल संस्करण 0 पर लागू होता है2.
जेडएफ के वर्तमान संस्करण (2.2) के लिए उपयोग करें:

$table = new Zend\Db\TableGateway\TableGateway('table', $Dbadapter, new Zend\Db\TableGateway\Feature\MetadataFeature()); 
$columns = $table->getColumns(); 

http://framework.zend.com/manual/2.2/en/modules/zend.db.table-gateway.html#tablegateway-features http://framework.zend.com/manual/2.2/en/modules/zend.db.metadata.html

0

मैं इस तरह की तरह है:

$table->info('cols'); 
संबंधित मुद्दे