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

PostgreSQL प्रक्रियात्मक भाषा C नहीं मिला

आप शायद पोस्टग्रेएसक्यूएल 9.2 में इस बदलाव का सामना कर रहे हैं (रिलीज नोट्स को यहां उद्धृत करते हुए):

<ब्लॉकक्वॉट>

CREATEFUNCTION (रॉबर्ट हास) में प्रक्रियात्मक भाषा के नामों को अब जबरन लोअरकेस नहीं किया जाएगा

जबकि गैर-उद्धृत भाषा पहचानकर्ता अभी भी लोअरकेस हैं, स्ट्रिंग्स और उद्धृत पहचानकर्ता अब जबरन डाउन-केस नहीं हैं। इस प्रकार उदाहरण के लिए CREATE FUNCTION ... LANGUAGE 'C' अब काम नहीं करेगा; इसे 'c' लिखा जाना चाहिए, या बेहतर होगा कि उद्धरणों को छोड़ दें।

यह CREATE FUNCTION . के लिए मैनुअल में भी दिखाई देता है

<ब्लॉकक्वॉट>

lang_name

उस भाषा का नाम जिसमें फ़ंक्शन लागू किया गया है। SQL हो सकता है , C , internal , या उपयोगकर्ता द्वारा परिभाषित प्रक्रियात्मक भाषा का नाम। पश्चगामी संगतता के लिए, नाम एकल उद्धरणों द्वारा संलग्न किया जा सकता है।

कम से कम संस्करण 7.3 (शायद अधिक) के बाद से भाषा के नाम को उद्धृत करने को हतोत्साहित किया गया है, लेकिन पुरानी आदतें स्पष्ट रूप से मर जाती हैं। 'C' . के आसपास के उद्धरणों को हटाना इस पर पहुंचकर समस्या का समाधान करता है:LANGUAGE c या LANGUAGE C

PL/R प्रोजेक्ट पेज को देखते हुए, उस संबंध में PostgreSQL 9.2 के लिए तैयार नहीं था।

जो कॉनवे से प्रतिक्रिया

जो कॉनवे ने एक उत्तर छोड़ा जो हटा दिया गया क्योंकि यह एक टिप्पणी होनी चाहिए। मैं इसे यहां उन आम जनता के लिए पेस्ट करता हूं जो हटाए गए उत्तरों को नहीं देख सकते:

<ब्लॉकक्वॉट>

मुझे संदेश मिल गया है, अभी नई पीएल/आर रिलीज करने का समय नहीं मिला है। दिसंबर तक इसकी तलाश करें, लेकिन इस बीच ऊपर उल्लिखित मैनुअल वर्कअराउंड बहुत आसान है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgresPlus Advanced Server 9.3Beta में नई Oracle-संगतता सुविधाएँ

  2. लेबल में अधिकतम वर्ण (तालिका नाम, कॉलम आदि)

  3. ग्रह संरेखण

  4. ट्रिगर फ़ंक्शन में गतिशील तालिका नाम के साथ INSERT

  5. माता-पिता से पूछताछ करते समय एक पंक्ति की स्रोत तालिका का नाम प्राप्त करें