ब्लॉब फ़ील्ड वाले कुछ टेबलों की खोज करना। मैं कमांड लाइन क्लाइंट के साथ select *
कैसे कर सकता हूं और स्क्रीन पर बाइनरी जंक के गुच्छा को स्क्रॉल करने के बजाए ब्लॉब फ़ील्ड्स को प्रिंटिंग (या मानक फ़ील्ड चौड़ाई में छंटनी) कर सकता हूं? यह mysql 5.1 क्लाइंट के साथ है। विकास के लिए बस एक अलग * और गैर-ब्लॉब फ़ील्ड को व्यक्तिगत रूप से सूचीबद्ध नहीं करना चाहते हैं।mysql कमांड लाइन क्लाइंट को चुनने के लिए कैसे चुनें *
उत्तर
यह MySQL में मूल रूप से प्रदर्शन किया जा सकता है लेकिन यह काफी बोझल है:
SET @sql=CONCAT('SELECT ', (SELECT GROUP_CONCAT(COLUMN_NAME) FROM
INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA='test' AND TABLE_NAME='test'
AND DATA_TYPE!='blob'), ' FROM test.test');
PREPARE preparedsql FROM @sql;
EXECUTE preparedsql;
DEALLOCATE PREPARE preparedsql;
मैं आम तौर पर के रूप में वे प्रणालियों के बीच अधिक परिवहनीय रहे MySQL प्रक्रियाओं के मार उपनाम/समारोह पसंद करते हैं:
function blobless()
{
cols=''
_ifs=$IFS
IFS=$(echo -en "\n\b")
for col in $(mysql --skip-column-names -e "SELECT COLUMN_NAME FROM
INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA='$1' AND TABLE_NAME='$2'
AND DATA_TYPE NOT LIKE '%blob'"); do
cols="$cols,$col"
done
IFS=$_ifs
mysql -e "SELECT $(echo $cols | cut -c2-) FROM $1.$2 $3"
}
इस प्रकार शामिल करें:
[andy ~]# blobless test test "where id>0"
+----+--------+
| id | t |
+----+--------+
| 1 | 123 |
| 2 | 124213 |
+----+--------+
यदि आप MySQL क्लाइंट कंसोल में हैंकार्यक्रम को निलंबित करने और खोल को छोड़ने के लिए। फिर उस ब्लॉबलेस डेटा को देखने के लिए blobless db table
का उपयोग करें। fg
निलंबित नौकरी (यानी MySQL क्लाइंट) को अग्रभूमि में पुनर्स्थापित करेगा। यह भी मार कार्यों द्वारा उपयोग किया जाएगा -
आप मेजबान/उपयोगकर्ता की आपूर्ति करने/कमांड लाइन पर पारित होने को बचाने के लिए ~/.my.cnf
(howto) में डिफ़ॉल्ट MySQL कनेक्शन विवरण निर्धारित कर सकते हैं।
कूल क्वेरी पहले में निर्माण करती है, लेकिन मैंने भी इसी तरह से संभाला है क्योंकि आपके "ब्लॉबलेस()" समाधान भी – DRapp
सुंदर, धन्यवाद प्रदान करता है! – tribalvibes
- 1. MySQL कमांड लाइन क्लाइंट
- 2. mysql कमांड लाइन
- 3. निष्पादित MySQL कमांड लाइन
- 4. MySQL स्क्रिप्ट कमांड लाइन
- 5. MySQL बैकअप और कमांड लाइन
- 6. MySQL कमांड लाइन और पेजर्स
- 7. एफ़टीपी क्लाइंट कमांड लाइन निर्देशिका डालें
- 8. कमांड लाइन से MySQL डंप आयात करने के लिए
- 9. कमांड लाइन
- 10. कमांड लाइन
- 11. mysql कमांड लाइन की डिस्प्ले सेटिंग्स को कैसे समायोजित करें?
- 12. कमांड लाइन
- 13. कमांड लाइन
- 14. Concat एक स्ट्रिंग को चुनने के लिए * MySql
- 15. कमांड लाइन पैरामीटर को परिभाषित करने के लिए सुझाव
- 16. mysqlump कमांड लाइन
- 17. कमांड लाइन
- 18. क्या कोई परिपक्व कमांड लाइन जेडीबीसी क्लाइंट हैं?
- 19. MySQL क्वेरी वर्तमान डिफ़ॉल्ट डेटाबेस संयोजन (कमांड लाइन क्लाइंट के माध्यम से) को खोजने के लिए क्वेरी
- 20. MySQL थोक लोड कमांड लाइन उपकरण
- 21. कमांड लाइन
- 22. mysql कमांड लाइन वापसी निष्पादन समय?
- 23. कमांड लाइन
- 24. पर्ल कमांड लाइन मल्टी-लाइन
- 25. MySQL चुनें * अलग आईडी
- 26. कमांड लाइन में Photoviewer.dll को चलाने के लिए कैसे
- 27. MYSQL चुनें जहां AES_ENCRYPT
- 28. कैसे कमांड लाइन
- 29. कैसे कमांड लाइन
- 30. कमांड लाइन - कमांड लूप
इस संबंधित प्रश्न को देखें: http://stackoverflow.com/questions/9122/select-all-columns-except-one-in-mysql बिल्कुल वही नहीं जो आप खोज रहे हैं, लेकिन यह विशिष्ट कॉलम को बहिष्कृत करने की अनुमति देता है , और BLOB फ़ील्ड का स्वत: बहिष्करण INFORMATION_SCHEMA –
धन्यवाद का उपयोग करके भी संभव हो सकता है। उनमें से कोई भी वास्तव में लक्ष्य पर नहीं है, लेकिन मुझे लगता है कि मैं एक संग्रहीत प्रक्रिया लिख सकता हूं जो मेटा डेटा का उपयोग गतिशील रूप से क्वेरी उत्पन्न करने और teh ब्लॉग को अनदेखा या छोटा करने के लिए करता है। ऐसा लगता है कि कथन वाक्यविन्यास को तालिका से निकालने के लिए विस्तारित करने की आवश्यकता होगी * तालिका से बाहर blob_column आदि – tribalvibes