Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

PHP - MySQL को संग्रहीत कार्यविधि से आउट पैरामीटर का मान मिलता है

या बस एक "SELECT @id AS id" करें फिर $row->id ठीक काम करेगा। आवश्यक होने पर नाम को सार्थक रखने के लिए मैं हमेशा चुनिंदा कॉलम का नाम बदलता हूं :-)

बीटीडब्लू, आप बस कॉल को संयोजित कर सकते हैं और @... (ए स्टेटमेंट डिलीमीटर के साथ) का चयन कर सकते हैं और आरएस लौटाया गया मूल्य होगा। दुर्भाग्य से यह एक बहु-परिणाम देता है और आपको पूरा सेट फ्लश करने की आवश्यकता होती है अन्यथा बाद के प्रश्न रुक जाएंगे। निम्नलिखित उदाहरण देखें:

$db->multi_query( "CALL addNewUser($name,$age,@id);SELECT @id as id" );
$db->next_result();            // flush the null RS from the call
$rs=$db->store_result();       // get the RS containing the id
echo $rs->fetch_object()->id, "\n";
$rs->free();

वैकल्पिक रूप से addNewUser में चयन जोड़ें और आउट परम के बजाय RS लौटाएं

$rs = $db->query( "CALL addNewUser($name,$age)" );
echo $rs->fetch_object()->id, "\n";
$rs->close();
$db->next_result();            // flush the null RS from the call

पहला एक मल्टीक्वेरी (NULL, RS) सेट और दूसरा a (RS, NULL) सेट देता है, इसलिए आप एक साधारण क्वेरी () कॉल का उपयोग कर सकते हैं जो पहले fetch_object () को एम्बेड करता है, लेकिन आपको अभी भी RS स्टैक को फ्लश करने की आवश्यकता है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मैसकल - यूनिक इंडेक्स के साथ संयुक्त कॉलम की डुप्लिकेट प्रविष्टियों को रोकना

  2. Virtualenv में स्थापित करने के लिए mysql-कनेक्टर-अजगर नहीं मिल सकता है

  3. डायनामिक कॉलम को पंक्तियों में स्थानांतरित करना

  4. MySQL में बड़ी SQL फ़ाइलें आयात करना

  5. रैंड द्वारा mysql आदेश () प्रदर्शन समस्या और समाधान