उदाहरण के लिए, यहाँ एक enum के रूप में स्थिति के साथ PostgreSQL में एक उत्पाद तालिका है:क्लोजर जेडीबीसी का उपयोग करके आप पोस्टग्रेस एनम वैल्यू कैसे डालते हैं?
create type product_status as enum ('InStock', 'OutOfStock');
create table product (
pid int primary key default nextval('product_pid_seq'),
sku text not null unique,
name text not null,
description text not null,
quantity int not null,
cost numeric(10,2) not null,
price numeric(10,2) not null,
weight numeric(10,2),
status product_status not null
);
एक उत्पाद डालने के लिए विशिष्ट Clojure कोड होगा:
(def prod-12345 {:sku "12345"
:name "My Product"
:description "yada yada yada"
:quantity 100
:cost 42.00
:price 59.00
:weight 0.3
:status "InStock"})
(sql/with-connection db-spec
(sql/insert-record :product prod-12345))
हालांकि, status
ताकि आप एक enum है इसे एक enum पर कास्टिंग किए बिना इसे सामान्य स्ट्रिंग के रूप में नहीं डाला जा सकता:
'InStock'::product_status
मुझे पता है कि आप इसे तैयार राज्य के साथ कर सकते हैं ment, जैसे:
INSERT INTO product (name, status) VALUES (?, ?::product_status)
लेकिन क्या तैयार वक्तव्य के बिना इसे करने का कोई तरीका है?
मुझे लगता है कि @espeed क्लोजर लाइब्रेरी 'clojure.java.jdbc' के उपयोग के बारे में पूछ रहा है, जावा की जेडीबीसी नहीं। –