psql
चूसना में चर । यदि आप एक पूर्णांक घोषित करना चाहते हैं, तो आपको पूर्णांक दर्ज करना होगा, फिर एक गाड़ी वापसी करनी होगी, फिर एक अर्धविराम में बयान समाप्त करना होगा। का निरीक्षण करें:
मान लें कि मैं पूर्णांक चर घोषित करना चाहता हूं my_var
और इसे एक तालिका में सम्मिलित करना चाहता हूं test
:
उदाहरण तालिका test
:
thedatabase=# \d test;
Table "public.test"
Column | Type | Modifiers
--------+---------+---------------------------------------------------
id | integer | not null default nextval('test_id_seq'::regclass)
Indexes:
"test_pkey" PRIMARY KEY, btree (id)
स्पष्ट रूप से, इस तालिका में अभी तक कुछ भी नहीं:
thedatabase=# select * from test;
id
----
(0 rows)
हम एक चर घोषित करते हैं। ध्यान दें कि अर्धविराम अगली पंक्ति पर कैसे है!
thedatabase=# \set my_var 999
thedatabase=# ;
अब हम सम्मिलित कर सकते हैं। हमें इस अजीब " :''
" वाक्यविन्यास को देखना होगा:
thedatabase=# insert into test(id) values (:'my_var');
INSERT 0 1
इसने काम कर दिया!
thedatabase=# select * from test;
id
-----
999
(1 row)
स्पष्टीकरण:
तो ... अगली पंक्ति में अर्धविराम न होने पर क्या होगा? चर? एक नज़र देख लो:
हम my_var
नई लाइन के बिना घोषित करते हैं ।
thedatabase=# \set my_var 999;
का चयन करते हैं my_var
।
thedatabase=# select :'my_var';
?column?
----------
999;
(1 row)
ये क्या डब्ल्यूटीएफ है? यह पूर्णांक नहीं है , यह एक स्ट्रिंग है 999;
!
thedatabase=# select 999;
?column?
----------
999
(1 row)