{"id":27561,"date":"2022-08-10T17:00:17","date_gmt":"2022-08-10T12:30:17","guid":{"rendered":"https:\/\/parspack.com\/blog\/?p=27561"},"modified":"2024-08-18T20:06:30","modified_gmt":"2024-08-18T15:36:30","slug":"how-use-postgresql-on-ubuntu","status":"publish","type":"post","link":"https:\/\/parspack.com\/blog\/os\/linux\/ubuntu\/how-use-postgresql-on-ubuntu","title":{"rendered":"\u0622\u0645\u0648\u0632\u0634 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 PostgreSQL \u0628\u0627 Node.js \u062f\u0631 \u0627\u0648\u0628\u0648\u0646\u062a\u0648 20.04"},"content":{"rendered":"<p style=\"text-align: justify;\">\u067e\u0644\u062a\u0641\u0631\u0645 \u062c\u0627\u0648\u0627\u0627\u0633\u06a9\u0631\u06cc\u067e\u062a Node.js \u0627\u0628\u0632\u0627\u0631\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641\u06cc \u0628\u0631\u0627\u06cc \u0627\u0631\u062a\u0628\u0627\u0637 \u0628\u0627 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u0647\u0627\u06cc \u062f\u0627\u062f\u0647 \u062f\u0627\u0631\u062f. \u0627\u0632\u062c\u0645\u0644\u0647 \u0627\u06cc\u0646 \u0627\u0628\u0632\u0627\u0631\u0647\u0627 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646 \u0628\u0647 node-postgres \u0627\u0634\u0627\u0631\u0647 \u06a9\u0631\u062f \u06a9\u0647 \u0627\u062c\u0632\u0627\u06cc \u0622\u0646 \u0628\u0647 Node.js \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc\u200c\u062f\u0647\u0646\u062f \u0628\u0627 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 PostgreSQL \u0627\u0631\u062a\u0628\u0627\u0637 \u0628\u0631\u0642\u0631\u0627\u0631 \u06a9\u0646\u062f. \u062f\u0631\u062d\u0642\u06cc\u0642\u062a \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0627\u0628\u0632\u0627\u0631 node-postgres\u060c \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0647\u0627\u06cc Node.js \u0631\u0627 \u0628\u0646\u0648\u06cc\u0633\u06cc\u062f \u062a\u0627 \u0628\u0647 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u062f\u0633\u062a\u0631\u0633\u06cc \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u06cc\u062f \u0648 \u0622\u0646\u200c\u0647\u0627 \u0631\u0627 \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 PostgreSQL \u0630\u062e\u06cc\u0631\u0647 \u06a9\u0646\u06cc\u062f.<\/p>\n<p style=\"text-align: justify;\">\u062f\u0631 \u0627\u06cc\u0646 \u0645\u0642\u0627\u0644\u0647 \u0622\u0645\u0648\u0632\u0634\u06cc \u0627\u0632 \u0633\u0631\u06cc \u0645\u0642\u0627\u0644\u0627\u062a <a href=\"https:\/\/parspack.com\/blog\/os\/linux\/ubuntu\">\u0622\u0645\u0648\u0632\u0634 \u0627\u0648\u0628\u0648\u0646\u062a\u0648<\/a> \u067e\u0627\u0631\u0633 \u067e\u06a9\u060c \u0642\u0635\u062f \u062f\u0627\u0631\u06cc\u0645 \u0646\u062d\u0648\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 PostgreSQL \u0628\u0627 Node.js \u062f\u0631 <a title=\"ubuntu \u0686\u06cc\u0633\u062a\" href=\"\/blog\/os\/linux\/ubuntu\/what-is-the-ubuntu\" target=\"_blank\" rel=\"noopener\">\u0627\u0648\u0628\u0648\u0646\u062a\u0648 <\/a> 20.04 \u0631\u0627 \u062a\u0648\u0636\u06cc\u062d \u062f\u0647\u06cc\u0645. \u0628\u0631\u0627\u06cc \u0627\u0646\u062c\u0627\u0645 \u0627\u06cc\u0646 \u06a9\u0627\u0631\u060c \u0646\u062e\u0633\u062a \u0628\u0627\u06cc\u062f \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0648 \u06cc\u06a9 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u062f\u0631 Postgres \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f. \u0633\u067e\u0633\u060c \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u062a\u0627\u0646 \u0631\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0627\u0628\u0632\u0627\u0631 node-postgres \u0628\u0647 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 Postgres \u0645\u062a\u0635\u0644 \u06a9\u0646\u06cc\u062f. \u062f\u0631\u0646\u0647\u0627\u06cc\u062a\u060c \u0627\u0632 \u0627\u0628\u0632\u0627\u0631 node-postgres \u0628\u0631\u0627\u06cc \u062f\u0631\u062c \u0648 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0648 \u0627\u0635\u0644\u0627\u062d \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u062f\u0631 \u0627\u06cc\u0646 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0628\u0647\u0631\u0647 \u0628\u0628\u0631\u06cc\u062f.<\/p>\n<div class=\"info-box-section\">\n<h2 class=\"title\">\u062e\u0631\u06cc\u062f \u0633\u0631\u0648\u0631 \u0644\u06cc\u0646\u0648\u06a9\u0633 \u0628\u0647 \u0647\u0645\u0631\u0627\u0647 \u0633\u06cc\u0633\u062a\u0645 \u0627\u0648\u0628\u0648\u0646\u062a\u0648 \u0627\u0632 \u067e\u0627\u0631\u0633 \u067e\u06a9<\/h2>\n<p class=\"description\">\u0634\u0645\u0627 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u0627\u0632 \u0627\u06cc\u0646 \u0645\u0642\u0627\u0644\u0647 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0633\u0631\u0648\u0631\u0647\u0627\u06cc \u0644\u06cc\u0646\u0648\u06a9\u0633 \u062e\u0648\u062f \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f \u0648 \u0627\u06af\u0631 \u0642\u0635\u062f \u062e\u0631\u06cc\u062f \u0647\u0631 \u06cc\u06a9 \u0627\u0632 \u0633\u0631\u0648\u06cc\u0633\u200c\u0647\u0627\u06cc \u0644\u06cc\u0646\u0648\u06a9\u0633\u06cc \u067e\u0627\u0631\u0633 \u067e\u06a9 \u0631\u0627 \u062f\u0627\u0631\u06cc\u062f\u060c \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u0628\u0627 \u06a9\u0627\u0631\u0634\u0646\u0627\u0633\u0627\u0646 \u0641\u0631\u0648\u0634 \u0645\u0627 \u062f\u0631 \u0627\u0631\u062a\u0628\u0627\u0637 \u0628\u0627\u0634\u06cc\u062f. \u0647\u0645\u0686\u0646\u06cc\u0646\u060c \u0634\u0645\u0627 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u0628\u0631\u0627\u06cc \u0627\u0637\u0644\u0627\u0639 \u0627\u0632 \u062a\u0639\u0631\u0641\u0647\u200c\u0647\u0627 \u0648 \u0647\u0632\u06cc\u0646\u0647\u200c\u0647\u0627 \u0628\u0647 \u0644\u06cc\u0646\u06a9\u200c\u0647\u0627\u06cc \u0632\u06cc\u0631 \u0645\u0631\u0627\u062c\u0639\u0647 \u06a9\u0646\u06cc\u062f.<\/p>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li><a title=\"\u062e\u0631\u06cc\u062f \u0633\u0631\u0648\u0631 \u0645\u062c\u0627\u0632\u06cc \u0644\u06cc\u0646\u0648\u06a9\u0633\" href=\"\/vps\/linux\" target=\"_blank\" rel=\"noopener\">\u0633\u0631\u0648\u0631 \u0645\u062c\u0627\u0632\u06cc \u0644\u06cc\u0646\u0648\u06a9\u0633<\/a><\/li>\n<li><a title=\"\u062e\u0631\u06cc\u062f \u0633\u0631\u0648\u0631 \u0644\u06cc\u0646\u0648\u06a9\u0633 \" href=\"\/servers\/linux\" target=\"_blank\" rel=\"noopener\">\u0633\u0631\u0648\u0631 \u0644\u06cc\u0646\u0648\u06a9\u0633<\/a><\/li>\n<li><a title=\"\u062e\u0631\u06cc\u062f \u0633\u0631\u0648\u0631 \u0627\u062e\u062a\u0635\u0627\u0635\u06cc \u0644\u06cc\u0646\u0648\u06a9\u0633\" href=\"\/dedicated-servers\/linux\" target=\"_blank\" rel=\"noopener\">\u0633\u0631\u0648\u0631 \u0627\u062e\u062a\u0635\u0627\u0635\u06cc \u0644\u06cc\u0646\u0648\u06a9\u0633<\/a><\/li>\n<li><a title=\"\u062e\u0631\u06cc\u062f \u0633\u0631\u0648\u0631 \u0627\u0628\u0631\u06cc \u0644\u06cc\u0646\u0648\u06a9\u0633\" href=\"\/cloud-server\/linux\" target=\"_blank\" rel=\"noopener\"> \u0633\u0631\u0648\u0631 \u0627\u0628\u0631\u06cc \u0644\u06cc\u0646\u0648\u06a9\u0633 <\/a><\/li>\n<li><a title=\"\u062e\u0631\u06cc\u062f \u0647\u0627\u0633\u062a \u0644\u06cc\u0646\u0648\u06a9\u0633\" href=\"\/host\/linux\" target=\"_blank\" rel=\"noopener\">\u0647\u0627\u0633\u062a \u0644\u06cc\u0646\u0648\u06a9\u0633<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/div>\n<h2 style=\"text-align: justify;\"><span style=\"color: #3366ff;\"><b>\u067e\u06cc\u0634\u200c\u0646\u06cc\u0627\u0632\u0647\u0627<\/b><\/span><\/h2>\n<ul style=\"text-align: justify;\">\n<li aria-level=\"1\">\u062d\u0633\u0627\u0628 \u06a9\u0627\u0631\u0628\u0631\u06cc non-root \u0628\u0627 \u0627\u0645\u062a\u06cc\u0627\u0632\u0647\u0627\u06cc sudo \u0648 \u0641\u0627\u06cc\u0631\u0648\u0627\u0644 \u062f\u0631 \u0627\u0648\u0628\u0648\u0646\u062a\u0648 20.04 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f.<\/li>\n<li aria-level=\"1\">Node.js \u0631\u0627 \u0631\u0648\u06cc \u0627\u0648\u0628\u0648\u0646\u062a\u0648 \u0646\u0635\u0628 \u06a9\u0646\u06cc\u062f.<\/li>\n<li aria-level=\"1\"><a href=\"https:\/\/parspack.com\/blog\/hosting\/learn-server\/postgresql-setup\" target=\"_blank\" rel=\"noopener\">PostgreSQL<\/a> \u0631\u0648\u06cc \u0633\u0631\u0648\u0631 \u0634\u0645\u0627 \u0646\u0635\u0628 \u0628\u0627\u0634\u062f.<\/li>\n<li aria-level=\"1\">\u0628\u0627 \u0646\u062d\u0648\u0647 \u062f\u0631\u062c \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0648 \u062f\u0633\u062a\u0631\u0633\u06cc \u0628\u0647 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u062f\u0631 PostgreSQL \u0622\u0634\u0646\u0627 \u0628\u0627\u0634\u06cc\u062f.<\/li>\n<li aria-level=\"1\">\u0646\u062d\u0648\u0647 \u0646\u0648\u0634\u062a\u0646 \u0628\u0631\u0646\u0627\u0645\u0647 \u062f\u0631 Node.js \u0631\u0627 \u0628\u062f\u0627\u0646\u06cc\u062f.<\/li>\n<li aria-level=\"1\">\u0628\u0627 \u0646\u062d\u0648\u0647 \u0646\u0648\u0634\u062a\u0646 \u062a\u0648\u0627\u0628\u0639 \u0646\u0627\u0647\u0645\u06af\u0627\u0645 \u062f\u0631 \u062c\u0627\u0648\u0627\u0627\u0633\u06a9\u0631\u06cc\u067e\u062a \u0622\u0634\u0646\u0627 \u0628\u0627\u0634\u06cc\u062f.<\/li>\n<\/ul>\n<h2 style=\"text-align: justify;\"><span style=\"color: #3366ff;\"><b>\u0645\u0631\u0627\u062d\u0644 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 PostgreSQL \u0628\u0627 Node.js \u062f\u0631 \u0627\u0648\u0628\u0648\u0646\u062a\u0648 20.04<\/b><\/span><\/h2>\n<p style=\"text-align: justify;\">\u0628\u0631\u0627\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 PostgreSQL \u0628\u0627 Node.js \u062f\u0631 \u0627\u0648\u0628\u0648\u0646\u062a\u0648 20.04\u060c \u0628\u0627\u06cc\u062f \u0645\u0631\u0627\u062d\u0644 \u0632\u06cc\u0631 \u0631\u0627 \u0628\u0647\u200c\u062a\u0631\u062a\u06cc\u0628 \u062f\u0646\u0628\u0627\u0644 \u06a9\u0646\u06cc\u062f.<\/p>\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" data-loaded=\"true\" src=\"https:\/\/parspack.com\/blog\/wp-content\/uploads\/2022\/08\/How-Use-PostgreSQL-With-Node.js-on-Ubuntu-1.jpg\" class=\"wp-image-27565 size-full\" alt=\"nodejs postgres\" title=\"\u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632  PostgreSQL \u0628\u0627 Node.js \u062f\u0631 \u0627\u0648\u0628\u0648\u0646\u062a\u0648\"       width=\"750\" height=\"421\" srcset=\"https:\/\/parspack.com\/blog\/wp-content\/uploads\/2022\/08\/How-Use-PostgreSQL-With-Node.js-on-Ubuntu-1.jpg 750w, https:\/\/parspack.com\/blog\/wp-content\/uploads\/2022\/08\/How-Use-PostgreSQL-With-Node.js-on-Ubuntu-1-300x168.jpg 300w\" sizes=\"auto, (max-width: 750px) 100vw, 750px\" \/><figcaption class=\"text-subtitle-5 text-gray-9 text-center mt-2\" >\u0686\u06af\u0648\u0646\u0647 \u0627\u0632 PostgreSQL \u0628\u0627 Node.js \u062f\u0631 \u0627\u0648\u0628\u0648\u0646\u062a\u0648 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u0645\u061f<\/figcaption><\/figure>\n<h2 style=\"text-align: justify;\"><span style=\"color: #3366ff;\"><b>\u0645\u0631\u062d\u0644\u0647 \u0627\u0648\u0644. \u0631\u0627\u0647\u200c\u0627\u0646\u062f\u0627\u0632\u06cc Project Directory (\u0641\u0647\u0631\u0633\u062a \u067e\u0631\u0648\u0698\u0647)<\/b><\/span><\/h2>\n<p style=\"text-align: justify;\">\u062f\u0631 \u0627\u06cc\u0646 \u0645\u0631\u062d\u0644\u0647\u060c \u062f\u0627\u06cc\u0631\u06a9\u062a\u0648\u0631\u06cc node application \u0631\u0627 \u0627\u06cc\u062c\u0627\u062f \u0648 node-postgres \u0631\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0628\u0631\u0646\u0627\u0645\u0647 npm \u0646\u0635\u0628 \u06a9\u0646\u06cc\u062f. \u062f\u0631 \u0627\u06cc\u0646 \u062f\u0627\u06cc\u0631\u06a9\u062a\u0648\u0631\u06cc\u060c \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 PostgreSQL \u0631\u0627 \u0627\u06cc\u062c\u0627\u062f \u0648 \u0628\u0627 \u0641\u0627\u06cc\u0644\u200c\u0647\u0627\u06cc \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc\u200c\u0634\u062f\u0647 \u062a\u0639\u0627\u0645\u0644 \u062e\u0648\u0627\u0647\u06cc\u062f \u06a9\u0631\u062f. \u0628\u0631\u0627\u06cc \u0631\u0627\u0647\u200c\u0627\u0646\u062f\u0627\u0632\u06cc Project Directory\u060c \u0628\u0627\u06cc\u062f \u0628\u0647\u200c\u0635\u0648\u0631\u062a \u0632\u06cc\u0631 \u0639\u0645\u0644 \u06a9\u0646\u06cc\u062f.<\/p>\n<div class=\"cta-section\">\n<p class=\"cta-description\">\u0628\u0631\u0627\u06cc \u0622\u0634\u0646\u0627\u06cc\u06cc \u06a9\u0627\u0645\u0644 \u0628\u0627 \u0647\u0631 \u06a9\u062f\u0627\u0645 \u0627\u0632 \u0633\u06cc\u0633\u062a\u0645\u200c\u0647\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u062f\u06cc\u062a\u0627\u0628\u06cc\u0633 \u0646\u0633\u0628\u06cc \u0648 \u0645\u0642\u0627\u06cc\u0633\u0647 \u0622\u0646\u200c\u0647\u0627 \u0628\u0627 \u06cc\u06a9\u062f\u06cc\u06af\u0631 \u0645\u0642\u0627\u0644\u0647 \u0632\u06cc\u0631 \u0631\u0627 \u0628\u062e\u0648\u0627\u0646\u06cc\u062f.<\/p>\n<p><a class=\"cta-button \" href=\"https:\/\/parspack.com\/blog\/hosting\/learn-server\/sqlite-vs-mysql-vs-postgresql-a-comparison-rdms\" target=\"_blank\" rel=\"noopener\">\u0645\u0642\u0627\u06cc\u0633\u0647 SQLite \u0648 MySQL \u0648 PostgreSQL<\/a><\/p>\n<\/div>\n<p style=\"text-align: justify;\">\u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u06a9\u0627\u0645\u0646\u062f mkdir\u060c \u06cc\u06a9 Project Directory \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">mkdir node_pg_app<\/pre>\n<p style=\"text-align: justify;\">\u0633\u067e\u0633\u060c \u0628\u0627 \u06a9\u0645\u06a9 \u062f\u0633\u062a\u0648\u0631 cd \u0628\u0647 \u062f\u0627\u06cc\u0631\u06a9\u062a\u0648\u0631\u06cc \u0628\u0631\u0648\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">cd node_pg_app<\/pre>\n<p style=\"text-align: justify;\">\u062d\u0627\u0644\u0627 \u062f\u0627\u06cc\u0631\u06a9\u062a\u0648\u0631\u06cc \u0647\u0645\u0631\u0627\u0647 \u0628\u0627 \u0641\u0627\u06cc\u0644 package.json \u0631\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u062f\u0633\u062a\u0648\u0631 npm init \u0631\u0627\u0647\u200c\u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">npm init -y<\/pre>\n<p style=\"text-align: justify;\">\u0641\u0644\u0627\u06af y- \u0628\u0647\u200c\u0635\u0648\u0631\u062a \u067e\u06cc\u0634\u200c\u0641\u0631\u0636 \u0641\u0627\u06cc\u0644 package.json \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc\u200c\u06a9\u0646\u062f. \u0628\u0639\u062f\u0627\u0632\u0622\u0646\u060c \u0645\u0627\u0698\u0648\u0644\u200c\u0647\u0627\u06cc node-postgres \u0631\u0627 \u0628\u0627 \u06a9\u0627\u0645\u0646\u062f npm \u0646\u0635\u0628 \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">npm install pg<\/pre>\n<p style=\"text-align: justify;\">\u0627\u06a9\u0646\u0648\u0646\u060c Project Directory \u062e\u0648\u062f \u0631\u0627 \u0631\u0627\u0647\u200c\u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0631\u062f\u0647\u200c\u0627\u06cc\u062f \u0648 \u0627\u0628\u0632\u0627\u0631 node-postgres \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 \u0632\u06cc\u0631\u0645\u062c\u0645\u0648\u0639\u0647 \u06cc\u0627 \u0648\u0627\u0628\u0633\u062a\u06af\u06cc \u0646\u0635\u0628 \u0634\u062f\u0647 \u0627\u0633\u062a. \u062f\u0631 \u0645\u0631\u062d\u0644\u0647 \u0628\u0639\u062f\u060c \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u0648 \u06cc\u06a9 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u062f\u0631 Postgres \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f.<\/p>\n<h2 style=\"text-align: justify;\"><span style=\"color: #3366ff;\"><b>\u0645\u0631\u062d\u0644\u0647 \u062f\u0648\u0645. \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0648 \u06cc\u06a9 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u062f\u0631 PostgreSQL<\/b><\/span><\/h2>\n<p style=\"text-align: justify;\">\u062f\u0631 \u0627\u06cc\u0646 \u0645\u0631\u062d\u0644\u0647\u060c \u0628\u0627\u06cc\u062f \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0648 \u06cc\u06a9 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0628\u0631\u0627\u06cc \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u062a\u0627\u0646 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f. \u062a\u0648\u062c\u0647 \u06a9\u0646\u06cc\u062f \u06a9\u0647 \u0648\u0642\u062a\u06cc Postgres \u0631\u0627 \u0628\u0631\u0627\u06cc \u0627\u0648\u0644\u06cc\u0646\u200c\u0628\u0627\u0631 \u0631\u0648\u06cc \u0627\u0648\u0628\u0648\u0646\u062a\u0648 \u0646\u0635\u0628 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u062f\u060c \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 Postgres \u0633\u0627\u062e\u062a\u0647 \u0645\u06cc\u200c\u0634\u0648\u062f \u06a9\u0647 \u0628\u0647\u200c\u062f\u0646\u0628\u0627\u0644 \u0622\u0646 \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0628\u0647 \u0646\u0627\u0645 Postgres \u0648 \u06cc\u06a9 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 Postgres \u062f\u0631 \u0633\u06cc\u0633\u062a\u0645\u062a\u0627\u0646 \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc\u200c\u06a9\u0646\u062f. \u06a9\u0627\u0631\u0628\u0631 Postgres \u0627\u06cc\u0646 \u0627\u0645\u06a9\u0627\u0646 \u0631\u0627 \u0628\u0631\u0627\u06cc\u062a\u0627\u0646 \u0641\u0631\u0627\u0647\u0645 \u0645\u06cc\u200c\u06a9\u0646\u062f \u062a\u0627 \u0641\u0636\u0627\u06cc PostgreSQL \u0631\u0627 \u0628\u0627\u0632 \u06a9\u0646\u06cc\u062f \u062a\u0627 \u062f\u0631 \u0622\u0646\u060c \u06a9\u0627\u0631\u0647\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a\u06cc \u0645\u0627\u0646\u0646\u062f \u0627\u06cc\u062c\u0627\u062f \u06a9\u0627\u0631\u0628\u0631 \u0648 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0631\u0627 \u0627\u0646\u062c\u0627\u0645 \u062f\u0647\u06cc\u062f.<\/p>\n<p style=\"text-align: justify;\">PostgreSQL \u0628\u0631\u0627\u06cc \u0627\u062a\u0635\u0627\u0644 \u0627\u0632 \u0637\u0631\u062d \u0627\u062d\u0631\u0627\u0632 \u0647\u0648\u06cc\u062a ident \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc\u200c\u06a9\u0646\u062f \u06a9\u0647 \u0628\u0647 \u06a9\u0627\u0631\u0628\u0631 \u062f\u0631 \u0627\u0648\u0628\u0648\u0646\u062a\u0648 \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc\u200c\u062f\u0647\u062f \u062a\u0627 \u0632\u0645\u0627\u0646\u06cc \u06a9\u0647 \u0646\u0627\u0645 \u06a9\u0627\u0631\u0628\u0631\u06cc \u0628\u0627 \u0646\u0627\u0645 \u06a9\u0627\u0631\u0628\u0631\u06cc \u0645\u0639\u062a\u0628\u0631 Postgres \u0645\u0637\u0627\u0628\u0642\u062a \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u062f\u060c \u0628\u062f\u0648\u0646 \u0627\u062d\u0632\u0627\u0631 \u0647\u0648\u06cc\u062a \u0628\u0647 Postgres shell \u0648\u0627\u0631\u062f \u0634\u0648\u062f. \u0627\u0632\u0622\u0646\u200c\u062c\u0627\u200c\u06a9\u0647 \u062f\u0631 \u0637\u0648\u0644 \u0641\u0631\u0627\u06cc\u0646\u062f \u0646\u0635\u0628\u060c \u06a9\u0627\u0631\u0628\u0631\u06cc \u0628\u0647 \u0646\u0627\u0645 Postgres \u062f\u0631 \u0627\u0648\u0628\u0648\u0646\u062a\u0648 \u0627\u06cc\u062c\u0627\u062f \u0634\u062f\u0647 \u0627\u0633\u062a \u06a9\u0647 \u0628\u0627 \u06a9\u0627\u0631\u0628\u0631 Postgres \u062f\u0631 PostgreSQL \u0645\u0637\u0627\u0628\u0642\u062a \u062f\u0627\u0631\u062f\u060c \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u0628\u0647 \u067e\u0648\u0633\u062a\u0647 Postgres \u0648\u0627\u0631\u062f \u0634\u0648\u06cc\u062f.<\/p>\n<div class=\"cta-section\">\n<p class=\"cta-description\">\u0633\u0647 \u0631\u0627\u0647 \u0645\u062e\u062a\u0644\u0641 \u0631\u0627 \u0628\u0631\u0627\u06cc \u0646\u0635\u0628 Node.js \u0631\u0648\u06cc \u0633\u0631\u0648\u0631 \u0627\u0648\u0628\u0648\u0646\u062a\u0648 20.04 \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u062f \u06a9\u0647 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u062f\u0631 \u0645\u0642\u0627\u0644\u0647 \u0632\u06cc\u0631 \u0628\u062e\u0648\u0627\u0646\u06cc\u062f.<\/p>\n<p><a class=\"cta-button \" href=\"https:\/\/parspack.com\/blog\/os\/linux\/ubuntu\/install-node-js-in-ubuntu-20-04\" target=\"_blank\" rel=\"noopener\">\u0646\u062d\u0648\u0647 \u0646\u0635\u0628 Node.js \u062f\u0631 \u0627\u0648\u0628\u0648\u0646\u062a\u0648 20.04<\/a><\/p>\n<\/div>\n<p style=\"text-align: justify;\">\u0628\u0631\u0627\u06cc \u0648\u0631\u0648\u062f\u060c \u06a9\u0627\u0631\u0628\u0631 \u0627\u0648\u0628\u0648\u0646\u062a\u0648 \u0631\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u06af\u0632\u06cc\u0646\u0647 sudo \u0628\u0647 Postgres \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0647\u06cc\u062f. \u0633\u067e\u0633 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 psql command\u060c \u0628\u0647 \u067e\u0648\u0633\u062a\u0647 Postgres \u0648\u0627\u0631\u062f \u0634\u0648\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">sudo -u postgres psql<\/pre>\n<p style=\"text-align: justify;\">\u0622\u0631\u06af\u0648\u0645\u0627\u0646\u200c\u0647\u0627\u06cc \u06a9\u0627\u0645\u0646\u062f \u0646\u0634\u0627\u0646\u200c\u062f\u0647\u0646\u062f\u0647 \u0646\u06a9\u0627\u062a \u0632\u06cc\u0631 \u0627\u0633\u062a:<\/p>\n<ul style=\"text-align: justify;\">\n<li aria-level=\"1\">U-: \u0641\u0644\u0627\u06af\u06cc \u06a9\u0647 \u06a9\u0627\u0631\u0628\u0631 \u0631\u0627 \u0628\u0647 \u06a9\u0627\u0631\u0628\u0631 \u0645\u062f\u0646\u0638\u0631 \u062f\u0631 \u0627\u0648\u0628\u0648\u0646\u062a\u0648 \u0633\u0648\u0626\u06cc\u0686 \u0645\u06cc\u200c\u06a9\u0646\u062f. \u0639\u0628\u0648\u0631 \u06a9\u0627\u0631\u0628\u0631 Postgres \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 \u0622\u0631\u06af\u0648\u0645\u0627\u0646\u060c \u06a9\u0627\u0631\u0628\u0631 \u062f\u0631 \u0627\u0648\u0628\u0648\u0646\u062a\u0648 \u0631\u0627 \u0628\u0647 Postgres \u062a\u063a\u06cc\u06cc\u0631 \u0645\u06cc\u200c\u062f\u0647\u062f.<\/li>\n<li aria-level=\"1\">psql: \u0628\u0631\u0646\u0627\u0645\u0647 \u062a\u0631\u0645\u06cc\u0646\u0627\u0644 \u062a\u0639\u0627\u0645\u0644\u06cc Postgres \u0627\u0633\u062a \u06a9\u0647 \u062f\u0631 \u0622\u0646\u060c \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u062f\u0633\u062a\u0648\u0631\u0647\u0627\u06cc SQL \u0631\u0627 \u0628\u0631\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u0647\u0627\u06cc \u062f\u0627\u062f\u0647\u060c \u0631\u0648\u0644\u200c\u0647\u0627\u060c \u062c\u062f\u0627\u0648\u0644 \u0648\u2026 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f.<\/li>\n<\/ul>\n<p style=\"text-align: justify;\">\u067e\u0633 \u0627\u0632 \u0644\u0627\u06af\u06cc\u0646 \u0628\u0647 Postgres shell\u060c \u062a\u0631\u0645\u06cc\u0646\u0627\u0644 \u0634\u0645\u0627 \u0628\u0647\u200c\u0634\u06a9\u0644 \u0632\u06cc\u0631 \u062e\u0648\u0627\u0647\u062f \u0628\u0648\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">postgres=#<\/pre>\n<p style=\"text-align: justify;\">\u067e\u0648\u0633\u062a\u0647\u00a0Postgres \u0646\u0627\u0645 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647\u200c\u0627\u06cc \u0627\u0633\u062a \u06a9\u0647 \u0628\u0627 \u0622\u0646 \u062a\u0639\u0627\u0645\u0644 \u062e\u0648\u0627\u0647\u06cc\u062f \u062f\u0627\u0634\u062a \u0648 # \u0646\u0634\u0627\u0646 \u0645\u06cc\u200c\u062f\u0647\u062f \u06a9\u0647 \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 \u0627\u064e\u0628\u064e\u0631\u06a9\u0627\u0631\u0628\u0631 \u0648\u0627\u0631\u062f \u0634\u062f\u0647\u200c\u0627\u06cc\u062f. \u0627\u06a9\u0646\u0648\u0646 \u0628\u0631\u0627\u06cc \u0628\u0631\u0646\u0627\u0645\u0647 Node\u060c \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u0648 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u062c\u062f\u0627\u06af\u0627\u0646\u0647\u200c\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f \u06a9\u0647 \u0628\u0631\u0646\u0627\u0645\u0647 \u0627\u0632 \u0622\u0646 \u0628\u0631\u0627\u06cc \u0627\u062a\u0635\u0627\u0644 \u0628\u0647 Postgres \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc\u200c\u06a9\u0646\u062f.<\/p>\n<p style=\"text-align: justify;\">\u0628\u0631\u0627\u06cc \u0627\u0646\u062c\u0627\u0645 \u0627\u06cc\u0646 \u06a9\u0627\u0631\u060c \u0631\u0648\u0644 \u062c\u062f\u06cc\u062f\u06cc \u0628\u0627 \u0631\u0645\u0632\u0639\u0628\u0648\u0631 \u0642\u0648\u06cc \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">CREATE USER fish_user WITH PASSWORD 'password';<\/pre>\n<p style=\"text-align: justify;\">\u06cc\u06a9 \u0631\u0648\u0644 \u062f\u0631 Postgres \u0628\u0633\u062a\u0647 \u0628\u0647 \u0646\u06cc\u0627\u0632 \u0634\u0645\u0627 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u062f \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u06cc\u0627 \u06af\u0631\u0648\u0647 \u062f\u0631 \u0646\u0638\u0631 \u06af\u0631\u0641\u062a\u0647 \u0634\u0648\u062f. \u062f\u0631 \u0627\u06cc\u0646 \u0622\u0645\u0648\u0632\u0634\u060c \u0631\u0648\u0644 \u062f\u0631 Postgres \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u062f\u0631 \u0646\u0638\u0631 \u06af\u0631\u0641\u062a\u0647 \u0634\u062f\u0647 \u0627\u0633\u062a.<\/p>\n<p style=\"text-align: justify;\">\u062f\u0631 \u0645\u0631\u062d\u0644\u0647 \u0628\u0639\u062f\u060c \u06cc\u06a9 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f \u0648 \u0645\u0627\u0644\u06a9\u06cc\u062a \u0631\u0627 \u0628\u0647 \u06a9\u0627\u0631\u0628\u0631\u06cc \u0627\u062e\u062a\u0635\u0627\u0635 \u062f\u0647\u06cc\u062f \u06a9\u0647 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0631\u062f\u0647\u200c\u0627\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">CREATE DATABASE fish OWNER fish_user;<\/pre>\n<p style=\"text-align: justify;\">\u062a\u0639\u06cc\u06cc\u0646 fish_user \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0627\u0645\u062a\u06cc\u0627\u0632\u0647\u0627\u06cc\u06cc \u0645\u0627\u0646\u0646\u062f \u0627\u06cc\u062c\u0627\u062f \u0648 \u062f\u0631\u0627\u067e \u0648 \u0642\u0631\u0627\u0631\u200c\u062f\u0627\u062f\u0646 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u062f\u0631 \u062c\u062f\u0648\u0644 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 fish \u0631\u0627 \u0641\u0631\u0627\u0647\u0645 \u0645\u06cc\u200c\u06a9\u0646\u062f.<\/p>\n<p style=\"text-align: justify;\">\u062d\u0627\u0644 \u067e\u0633 \u0627\u0632 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0627\u0631\u0628\u0631 \u0648 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647\u060c \u0627\u0632 \u067e\u0648\u0633\u062a\u0647 \u062a\u0639\u0627\u0645\u0644\u06cc Postgres \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">Postgres=# \\q<\/pre>\n<p style=\"text-align: justify;\">\u0628\u0631\u0627\u06cc \u0648\u0631\u0648\u062f \u0628\u0647 \u067e\u0648\u0633\u062a\u0647 Postgres \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 fish_user\u060c \u0628\u0627\u06cc\u062f \u062f\u0631 \u0627\u0648\u0628\u0648\u0646\u062a\u0648 \u06a9\u0627\u0631\u0628\u0631\u06cc \u0628\u0627 \u0646\u0627\u0645\u06cc \u0634\u0628\u06cc\u0647 \u0628\u0647 \u06a9\u0627\u0631\u0628\u0631 Postgres \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f.<\/p>\n<p style=\"text-align: justify;\">\u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u062f\u0633\u062a\u0648\u0631 adduser\u060c \u06a9\u0627\u0631\u0628\u0631 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">sudo adduser fish_user<\/pre>\n<p style=\"text-align: justify;\">\u0627\u06a9\u0646\u0648\u0646 \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u062f\u0631 \u0627\u0648\u0628\u0648\u0646\u062a\u0648 \u0648 \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u062f\u0631 PostgreSQL \u0648 \u06cc\u06a9 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0628\u0631\u0627\u06cc \u0628\u0631\u0646\u0627\u0645\u0647 Node \u062e\u0648\u062f \u0627\u06cc\u062c\u0627\u062f \u06a9\u0631\u062f\u0647\u200c\u0627\u06cc\u062f. \u062f\u0631 \u0645\u0631\u062d\u0644\u0647 \u0628\u0639\u062f\u060c \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 fish_user \u0648\u0627\u0631\u062f \u067e\u0648\u0633\u062a\u0647 \u062a\u0639\u0627\u0645\u0644\u06cc PostgreSQL \u0634\u0648\u06cc\u062f \u0648 \u06cc\u06a9 \u062c\u062f\u0648\u0644 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f.<\/p>\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" data-loaded=\"true\" src=\"https:\/\/parspack.com\/blog\/wp-content\/uploads\/2022\/08\/How-Use-PostgreSQL-With-Node-3.jpg\" class=\"wp-image-27567 size-full\" alt=\"\u062f\u0633\u062a\u0648\u0631\u0627\u062a postgresql\" title=\"\u0627\u06cc\u062c\u0627\u062f \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 PostgreSQL\"       width=\"750\" height=\"375\" srcset=\"https:\/\/parspack.com\/blog\/wp-content\/uploads\/2022\/08\/How-Use-PostgreSQL-With-Node-3.jpg 750w, https:\/\/parspack.com\/blog\/wp-content\/uploads\/2022\/08\/How-Use-PostgreSQL-With-Node-3-300x150.jpg 300w\" sizes=\"auto, (max-width: 750px) 100vw, 750px\" \/><figcaption class=\"text-subtitle-5 text-gray-9 text-center mt-2\" >\u0622\u0645\u0648\u0632\u0634 \u0627\u06cc\u062c\u0627\u062f \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 PostgreSQL<\/figcaption><\/figure>\n<h2 style=\"text-align: justify;\"><span style=\"color: #3366ff;\"><b>\u0645\u0631\u062d\u0644\u0647 \u0633\u0648\u0645. \u0628\u0627\u0632\u200c\u06a9\u0631\u062f\u0646 \u067e\u0648\u0633\u062a\u0647 PostgreSQL \u0628\u0627 \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u0631\u0648\u0644 \u0648 \u06cc\u06a9 \u062c\u062f\u0648\u0644<\/b><\/span><\/h2>\n<p style=\"text-align: justify;\">\u062f\u0631 \u0627\u06cc\u0646 \u0628\u062e\u0634\u060c \u067e\u0648\u0633\u062a\u0647 Postgres \u0631\u0627 \u0628\u0627\u0632 \u06a9\u0646\u06cc\u062f. \u067e\u0633 \u0627\u0632 \u0644\u0627\u06af\u06cc\u0646 \u0628\u0647 \u067e\u0648\u0633\u062a\u0647\u060c \u06cc\u06a9 \u062c\u062f\u0648\u0644 \u0628\u0631\u0627\u06cc \u0628\u0631\u0646\u0627\u0645\u0647 Node.js \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f.<\/p>\n<p style=\"text-align: justify;\">\u0628\u0631\u0627\u06cc \u0628\u0627\u0632\u200c\u06a9\u0631\u062f\u0646 \u067e\u0648\u0633\u062a\u0647 \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 fish_user\u060c \u062f\u0633\u062a\u0648\u0631 \u0632\u06cc\u0631 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">sudo -u fish_user psql -d fish<\/pre>\n<p style=\"text-align: justify;\">sudo -u fish_user \u06a9\u0627\u0631\u0628\u0631 \u0627\u0648\u0628\u0648\u0646\u062a\u0648 \u0631\u0627 \u0628\u0647 fish_user \u062a\u063a\u06cc\u06cc\u0631 \u0645\u06cc\u200c\u062f\u0647\u062f \u0648 \u0633\u067e\u0633\u060c \u06a9\u0627\u0645\u0646\u062f psql \u0631\u0627 \u0628\u0631\u0627\u06cc \u0622\u0646 \u06a9\u0627\u0631\u0628\u0631 \u0627\u062c\u0631\u0627 \u0645\u06cc\u200c\u06a9\u0646\u062f. \u0641\u0644\u0627\u06af d- \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647\u200c\u0627\u06cc \u0631\u0627 \u0645\u0634\u062e\u0635 \u0645\u06cc\u200c\u06a9\u0646\u062f \u06a9\u0647 \u0645\u06cc\u200c\u062e\u0648\u0627\u0647\u06cc\u062f \u0628\u0647 \u0622\u0646 \u0645\u062a\u0635\u0644 \u0634\u0648\u06cc\u062f \u06a9\u0647 \u062f\u0631 \u0627\u06cc\u0646 \u0645\u0648\u0631\u062f fish \u0627\u0633\u062a. \u0627\u06af\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0631\u0627 \u0645\u0634\u062e\u0635 \u0646\u06a9\u0646\u06cc\u062f\u060c psql \u0633\u0639\u06cc \u0645\u06cc\u200c\u06a9\u0646\u062f \u0628\u0647\u200c\u0637\u0648\u0631 \u067e\u06cc\u0634\u200c\u0641\u0631\u0636 \u0628\u0647 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 fish_user \u0645\u062a\u0635\u0644 \u0634\u0648\u062f \u06a9\u0647 \u0645\u0639\u0645\u0648\u0644\u0627\u064b \u0622\u0646 \u0631\u0627 \u067e\u06cc\u062f\u0627 \u0646\u0645\u06cc\u200c\u06a9\u0646\u062f \u0648 \u062e\u0637\u0627 \u0645\u06cc\u200c\u062f\u0647\u062f.<\/p>\n<p style=\"text-align: justify;\">\u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u0648\u0627\u0631\u062f \u067e\u0648\u0633\u062a\u0647 psql \u0634\u062f\u06cc\u062f\u060c \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u067e\u0648\u0633\u062a\u0647 \u0634\u0645\u0627 \u0628\u0647\u200c\u0634\u06a9\u0644 \u0632\u06cc\u0631 \u062e\u0648\u0627\u0647\u062f \u0628\u0648\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">fish=&gt;<\/pre>\n<p style=\"text-align: justify;\">\u0627\u06cc\u0646 \u0639\u0644\u0627\u0645\u062a fish \u0646\u0634\u0627\u0646 \u0645\u06cc\u200c\u062f\u0647\u062f \u06a9\u0647 \u0627\u06a9\u0646\u0648\u0646 \u0628\u0647 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 fish \u0645\u062a\u0635\u0644 \u0647\u0633\u062a\u06cc\u062f.<\/p>\n<p style=\"text-align: justify;\">\u062d\u0627\u0644\u0627 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u062f\u0633\u062a\u0648\u0631 conninfo\/ \u0627\u062a\u0635\u0627\u0644 \u0631\u0627 \u062a\u0623\u06cc\u06cc\u062f \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">\\conninfo<\/pre>\n<p style=\"text-align: justify;\">\u062f\u0631\u0646\u0647\u0627\u06cc\u062a\u060c \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u062e\u0631\u0648\u062c\u06cc\u200c\u0627\u06cc \u0645\u0634\u0627\u0628\u0647 \u0632\u06cc\u0631 \u062f\u0631\u06cc\u0627\u0641\u062a \u062e\u0648\u0627\u0647\u06cc\u062f \u06a9\u0631\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">You are connected to database \"fish\" as user \"fish_user\" via socket in \"\/var\/run\/postgresql\" at port \"5432\".<\/pre>\n<p style=\"text-align: justify;\">\u0627\u06cc\u0646 \u062e\u0631\u0648\u062c\u06cc \u062a\u0623\u06cc\u06cc\u062f \u0645\u06cc\u200c\u06a9\u0646\u062f \u06a9\u0647 \u0648\u0627\u0642\u0639\u0627\u064b \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 fish_user \u0648\u0627\u0631\u062f \u0634\u062f\u0647\u200c\u0627\u06cc\u062f \u0648 \u0628\u0647 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 fish \u0645\u062a\u0635\u0644 \u0647\u0633\u062a\u06cc\u062f. \u062f\u0631 \u0645\u0631\u062d\u0644\u0647 \u0628\u0639\u062f\u060c \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u062c\u062f\u0648\u0644\u06cc \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f \u062a\u0627 \u062d\u0627\u0648\u06cc \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc\u06cc \u0628\u0627\u0634\u062f \u06a9\u0647 \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u062a\u0627\u0646 \u0631\u0627 \u0645\u0634\u062e\u0635 \u0645\u06cc\u200c\u06a9\u0646\u062f.<\/p>\n<p style=\"text-align: justify;\">\u062c\u062f\u0648\u0644\u06cc \u06a9\u0647 \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc\u200c\u06a9\u0646\u06cc\u062f\u060c \u0646\u0627\u0645 Shark \u0648 \u0631\u0646\u06af \u0622\u0646\u200c\u0647\u0627 \u0631\u0627 \u0645\u0634\u062e\u0635 \u0645\u06cc\u200c\u06a9\u0646\u062f. \u0627\u06cc\u0646 \u062c\u062f\u0648\u0644 \u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u0628\u0627 \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u0634\u0645\u0627 \u067e\u0631 \u0645\u06cc\u200c\u0634\u0648\u062f\u060c \u0628\u0647\u200c\u0634\u06a9\u0644 \u0632\u06cc\u0631 \u062f\u0631\u062e\u0648\u0627\u0647\u062f \u0622\u0645\u062f:<\/p>\n<table style=\"width: 99.5005%; height: 195px;\">\n<thead>\n<tr>\n<th style=\"width: 26.89%; text-align: center;\"><b>\u00a0 id<\/b><\/th>\n<th style=\"width: 46.2201%; text-align: center;\"><b> \u00a0 Name\u00a0\u00a0\u00a0<\/b><\/th>\n<th style=\"width: 25.933%; text-align: center;\"><b>color<\/b><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"width: 26.89%; text-align: center;\">\u00a0 1<\/td>\n<td style=\"width: 46.2201%; text-align: center;\">\u00a0 Sammy<\/td>\n<td style=\"width: 25.933%; text-align: center;\">blue<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 26.89%; text-align: center;\">\u00a0 2<\/td>\n<td style=\"width: 46.2201%; text-align: center;\">\u00a0 \u00a0 jose<\/td>\n<td style=\"width: 25.933%; text-align: center;\">teal<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p style=\"text-align: justify;\">\u0627\u06a9\u0646\u0648\u0646 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u06a9\u0627\u0645\u0646\u062f SQL create table\u060c \u06cc\u06a9 \u062c\u062f\u0648\u0644 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">CREATE TABLE shark(\r\nid SERIAL PRIMARY KEY,\r\nname VARCHAR(50) NOT NULL,\r\ncolor VARCHAR(50) NOT NULL);<\/pre>\n<p style=\"text-align: justify;\">\u062f\u0633\u062a\u0648\u0631 CREATE TABLE Shark \u062c\u062f\u0648\u0644\u06cc \u0628\u0627 \u06f3 \u0633\u062a\u0648\u0646 \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc\u200c\u06a9\u0646\u062f:<\/p>\n<ul style=\"text-align: justify;\">\n<li aria-level=\"1\">id: \u06cc\u06a9 \u0641\u06cc\u0644\u062f Auto-Incrementing \u0648 \u06a9\u0644\u06cc\u062f Primary \u0628\u0631\u0627\u06cc \u062c\u062f\u0648\u0644 \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc\u200c\u06a9\u0646\u062f. \u0647\u0631\u0628\u0627\u0631 \u06a9\u0647 \u06cc\u06a9 \u0631\u062f\u06cc\u0641 \u0631\u0627 \u0648\u0627\u0631\u062f \u0645\u06cc\u200c\u06a9\u0646\u06cc\u062f\u060c Postgres \u0645\u0642\u062f\u0627\u0631 id \u0631\u0627 \u0628\u0631\u0627\u0633\u0627\u0633 \u0622\u0646 \u0627\u0641\u0632\u0627\u06cc\u0634 \u0645\u06cc\u200c\u062f\u0647\u062f \u0648 \u067e\u0631 \u0645\u06cc\u200c\u06a9\u0646\u062f.<\/li>\n<li aria-level=\"1\">name and color: \u0641\u06cc\u0644\u062f\u0647\u0627\u06cc\u06cc \u0647\u0633\u062a\u0646\u062f \u06a9\u0647 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u0646\u062f \u06f5\u06f0 \u06a9\u0627\u0631\u0627\u06a9\u062a\u0631 \u0631\u0627 \u0630\u062e\u06cc\u0631\u0647 \u06a9\u0646\u0646\u062f. NOT NULL \u0645\u062d\u062f\u0648\u062f\u06cc\u062a\u06cc \u0627\u0633\u062a \u06a9\u0647 \u0627\u0632 \u062e\u0627\u0644\u06cc\u200c\u0628\u0648\u062f\u0646 \u0641\u06cc\u0644\u062f\u0647\u0627 \u062c\u0644\u0648\u06af\u06cc\u0631\u06cc \u0645\u06cc\u200c\u06a9\u0646\u062f.<\/li>\n<\/ul>\n<p style=\"text-align: justify;\">\u062d\u0627\u0644 \u0628\u0631\u0631\u0633\u06cc \u06a9\u0646\u06cc\u062f \u06a9\u0647 \u0622\u06cc\u0627 \u062c\u062f\u0648\u0644 \u0628\u0627 \u0645\u0634\u062e\u0635\u0627\u062a \u0645\u062f\u0646\u0638\u0631\u062a\u0627\u0646 \u0627\u06cc\u062c\u0627\u062f \u0634\u062f\u0647 \u0627\u0633\u062a \u06cc\u0627 \u062e\u06cc\u0631. \u0628\u0631\u0627\u06cc \u0627\u06cc\u0646 \u06a9\u0627\u0631\u060c \u0627\u0632 \u062f\u0633\u062a\u0648\u0631 \u0632\u06cc\u0631 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">\\dt<\/pre>\n<p style=\"text-align: justify;\">\u06a9\u0627\u0645\u0646\u062f dt\\ \u0647\u0645\u0647 \u062c\u062f\u0627\u0648\u0644 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0631\u0627 \u0641\u0647\u0631\u0633\u062a \u0645\u06cc\u200c\u06a9\u0646\u062f.<\/p>\n<p style=\"text-align: justify;\">\u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u062f\u0633\u062a\u0648\u0631\u00a0 dt\\ \u0631\u0627 \u0627\u062c\u0631\u0627 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u062f\u060c \u062e\u0631\u0648\u062c\u06cc \u0632\u06cc\u0631 \u0631\u0627 \u0645\u0634\u0627\u0647\u062f\u0647 \u062e\u0648\u0627\u0647\u06cc\u062f \u06a9\u0631\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">         List of relations\r\n Schema | Name  | Type  |   Owner\r\n--------+-------+-------+-----------\r\n public | shark | table | fish_user\r\n(1 row)\r\n<\/pre>\n<p style=\"text-align: justify;\">\u0627\u06cc\u0646 \u062e\u0631\u0648\u062c\u06cc \u062a\u0623\u06cc\u06cc\u062f \u0645\u06cc\u200c\u06a9\u0646\u062f \u06a9\u0647 fish_user \u0633\u0627\u0632\u0646\u062f\u0647 \u062c\u062f\u0648\u0644 Shark \u0627\u0633\u062a.<\/p>\n<div class=\"cta-section\">\n<p class=\"cta-description\">\u0686\u0637\u0648\u0631 \u0627\u0648\u0644\u06cc\u0646 \u0628\u0631\u0646\u0627\u0645\u0647 \u062e\u0648\u062f \u0631\u0627 \u062f\u0631 Node.js \u0628\u0646\u0648\u06cc\u0633\u06cc\u0645 \u0648 \u0627\u062c\u0631\u0627 \u06a9\u0646\u06cc\u0645\u061f \u062f\u0631 \u0645\u0642\u0627\u0644\u0647 \u0632\u06cc\u0631 \u0628\u062e\u0648\u0627\u0646\u06cc\u062f.<\/p>\n<p><a class=\"cta-button \" href=\"https:\/\/parspack.com\/blog\/os\/linux\/how-write-and-node-js-program\" target=\"_blank\" rel=\"noopener\">\u0646\u0648\u0634\u062a\u0646 \u0648 \u0627\u062c\u0631\u0627 \u06a9\u0631\u062f\u0646 \u0628\u0631\u0646\u0627\u0645\u0647 \u062f\u0631 Node.js<\/a><\/p>\n<\/div>\n<p style=\"text-align: justify;\">\u062d\u0627\u0644\u0627 \u0627\u0632 \u067e\u0648\u0633\u062a\u0647 Postgres \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">\\q<\/pre>\n<p style=\"text-align: justify;\">\u0627\u062c\u0631\u0627\u06cc \u0627\u06cc\u0646 \u06a9\u0627\u0645\u0646\u062f \u0634\u0645\u0627 \u0631\u0627 \u0628\u0647 Project Directory \u0628\u0631\u0645\u06cc\u200c\u06af\u0631\u062f\u0627\u0646\u062f. \u0628\u0627 \u0627\u06cc\u062c\u0627\u062f \u062c\u062f\u0648\u0644\u060c \u0627\u0632 \u0645\u0627\u0698\u0648\u0644 node-postgres \u0628\u0631\u0627\u06cc \u0627\u062a\u0635\u0627\u0644 \u0628\u0647 Postgres \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f.<\/p>\n<h2 style=\"text-align: justify;\"><span style=\"color: #3366ff;\"><b>\u0645\u0631\u062d\u0644\u0647 \u0686\u0647\u0627\u0631\u0645. \u0627\u062a\u0635\u0627\u0644 \u0628\u0647 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 Postgres<\/b><\/span><\/h2>\n<p style=\"text-align: justify;\">\u062f\u0631 \u0627\u06cc\u0646 \u0645\u0631\u062d\u0644\u0647\u060c \u0628\u0627\u06cc\u062f \u0627\u0632 node-postgres \u0628\u0631\u0627\u06cc \u0627\u062a\u0635\u0627\u0644 \u0628\u0631\u0646\u0627\u0645\u0647 Node.js \u0628\u0647 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 PostgreSQL \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f. \u0628\u0631\u0627\u06cc \u0627\u0646\u062c\u0627\u0645 \u0627\u06cc\u0646 \u06a9\u0627\u0631\u060c \u0628\u0627\u06cc\u062f \u0627\u0632 node-postgres \u0628\u0647\u200c\u0645\u0646\u0638\u0648\u0631 \u0627\u06cc\u062c\u0627\u062f Connection Pool \u0628\u0647\u0631\u0647 \u0628\u0628\u0631\u06cc\u062f. Connection Pool \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 \u062d\u0627\u0641\u0638\u0647\u200c\u0627\u06cc \u067e\u0646\u0647\u0627\u0646 \u0628\u0631\u0627\u06cc \u0627\u062a\u0635\u0627\u0644\u0627\u062a \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0639\u0645\u0644 \u0645\u06cc\u200c\u06a9\u0646\u062f \u0648 \u0628\u0647 \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u062a\u0627\u0646 \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc\u200c\u062f\u0647\u062f \u062a\u0627 \u0627\u0632 \u0627\u062a\u0635\u0627\u0644\u0627\u062a \u0628\u0631\u0627\u06cc \u0647\u0645\u0647 \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u200c\u0647\u0627\u06cc \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0645\u062c\u062f\u062f\u0627\u064b \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f. \u0647\u0645\u0686\u0646\u06cc\u0646\u060c \u0627\u06cc\u0646 \u0642\u0627\u0628\u0644\u06cc\u062a \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u062f \u0633\u0631\u0639\u062a \u0628\u0631\u0646\u0627\u0645\u0647 \u0634\u0645\u0627 \u0631\u0627 \u0627\u0641\u0632\u0627\u06cc\u0634 \u062f\u0647\u062f \u0648 \u0645\u0646\u0627\u0628\u0639 \u0633\u0631\u0648\u0631\u062a\u0627\u0646 \u0631\u0627 \u0630\u062e\u06cc\u0631\u0647 \u06a9\u0646\u062f.<\/p>\n<p style=\"text-align: justify;\">\u0627\u0628\u062a\u062f\u0627 \u0641\u0627\u06cc\u0644 db.js \u0631\u0627 \u062f\u0631 \u0648\u06cc\u0631\u0627\u06cc\u0634\u06af\u0631 \u062f\u0644\u062e\u0648\u0627\u0647 \u062e\u0648\u062f \u0627\u06cc\u062c\u0627\u062f \u0648 \u0628\u0627\u0632 \u06a9\u0646\u06cc\u062f. \u0628\u0631\u0627\u06cc \u0627\u06cc\u0646 \u06a9\u0627\u0631\u060c \u0627\u0632 \u062f\u0633\u062a\u0648\u0631 \u0632\u06cc\u0631 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">nano db.js<\/pre>\n<p style=\"text-align: justify;\">\u062f\u0631 \u0641\u0627\u06cc\u0644 db.js \u062e\u0648\u062f\u060c \u0628\u0647 \u0645\u0627\u0698\u0648\u0644 node-postgres \u0646\u06cc\u0627\u0632 \u062e\u0648\u0627\u0647\u06cc\u062f \u062f\u0627\u0634\u062a. \u0627\u0632 Destructuring Assignment \u0628\u0631\u0627\u06cc \u0627\u0633\u062a\u062e\u0631\u0627\u062c \u06a9\u0644\u0627\u0633 Pool \u0627\u0632 node-postgres \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">const { Pool } = require('pg')<\/pre>\n<p style=\"text-align: justify;\">\u062f\u0631 \u0645\u0631\u062d\u0644\u0647 \u0628\u0639\u062f\u060c \u06cc\u06a9 \u0646\u0645\u0648\u0646\u0647 Pool \u0628\u0631\u0627\u06cc Connection Pool \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">const { Pool} = require('pg')\r\n\r\nconst pool = new Pool({\r\n  user: 'fish_user',\r\n  database: 'fish',\r\n  password: 'password',\r\n  port: 5432,\r\n  host: 'localhost',\r\n})<\/pre>\n<p style=\"text-align: justify;\">\u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u0646\u0645\u0648\u0646\u0647 Pool \u0631\u0627 \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc\u200c\u06a9\u0646\u06cc\u062f\u060c \u0622\u0628\u062c\u06a9\u062a \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc\u200c\u0634\u062f\u0647\u200c\u0627\u06cc \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 \u0622\u0631\u06af\u0648\u0645\u0627\u0646 \u0627\u0631\u0633\u0627\u0644 \u0645\u06cc\u200c\u0634\u0648\u062f. \u0627\u06cc\u0646 \u0622\u0628\u062c\u06a9\u062a \u062d\u0627\u0648\u06cc \u062c\u0632\u0626\u06cc\u0627\u062a\u06cc \u0627\u0633\u062a \u06a9\u0647 node-postgres \u0628\u0631\u0627\u06cc \u0628\u0631\u0642\u0631\u0627\u0631\u06cc \u0627\u0631\u062a\u0628\u0627\u0637 \u0628\u0627 Postgres \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc\u200c\u06a9\u0646\u062f. \u0622\u0628\u062c\u06a9\u062a \u06cc\u0627\u062f\u0634\u062f\u0647 \u0634\u0627\u0645\u0644 \u0648\u06cc\u0698\u06af\u06cc\u200c\u0647\u0627\u06cc \u0632\u06cc\u0631 \u0627\u0633\u062a:<\/p>\n<ul style=\"text-align: justify;\">\n<li aria-level=\"1\">user: \u06a9\u0627\u0631\u0628\u0631\u06cc \u06a9\u0647 \u062f\u0631 Postgres \u0627\u06cc\u062c\u0627\u062f \u06a9\u0631\u062f\u0647\u200c\u0627\u06cc\u062f.<\/li>\n<li aria-level=\"1\">database: \u0646\u0627\u0645 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647\u200c\u0627\u06cc \u06a9\u0647 \u062f\u0631 Postgres \u0627\u06cc\u062c\u0627\u062f \u06a9\u0631\u062f\u0647\u200c\u0627\u06cc\u062f.<\/li>\n<li aria-level=\"1\">password: \u0631\u0645\u0632\u0639\u0628\u0648\u0631\u06cc \u06a9\u0647 \u0628\u0631\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631 fish_user \u062a\u0639\u06cc\u06cc\u0646 \u06a9\u0631\u062f\u0647\u200c\u0627\u06cc\u062f.<\/li>\n<li aria-level=\"1\">port: \u067e\u0648\u0631\u062a\u06cc \u0627\u0633\u062a \u06a9\u0647 Postgres \u0627\u0632 \u0622\u0646 \u067e\u06cc\u0631\u0648\u06cc \u0645\u06cc\u200c\u06a9\u0646\u062f. \u0628\u0647\u200c\u0635\u0648\u0631\u062a \u067e\u06cc\u0634\u200c\u0641\u0631\u0636 \u067e\u0648\u0631\u062a 5432 \u0627\u0646\u062a\u062e\u0627\u0628 \u0634\u062f\u0647 \u0627\u0633\u062a.<\/li>\n<li aria-level=\"1\">host: \u0633\u0631\u0648\u0631 Postgres \u0627\u0633\u062a \u06a9\u0647 \u0645\u06cc\u200c\u062e\u0648\u0627\u0647\u06cc\u062f node-postgres \u0628\u0647 \u0622\u0646 \u0645\u062a\u0635\u0644 \u0634\u0648\u062f. \u0628\u0627 \u0627\u0646\u062a\u0642\u0627\u0644 \u0628\u0647 \u0647\u0627\u0633\u062a \u0644\u0648\u06a9\u0627\u0644\u060c node-postgres \u0628\u0647 \u0633\u0631\u0648\u0631 Postgres \u0645\u062a\u0635\u0644 \u0645\u06cc\u200c\u0634\u0648\u062f. \u0627\u06af\u0631 \u0633\u0631\u0648\u0631 Postgres \u0631\u0648\u06cc \u0642\u0633\u0645\u062a \u062f\u06cc\u06af\u0631\u06cc \u0642\u0631\u0627\u0631 \u062f\u0627\u0634\u062a\u060c \u0647\u0627\u0633\u062a \u0634\u0645\u0627 \u0628\u0647 \u0627\u06cc\u0646 \u0634\u06a9\u0644 \u062e\u0648\u0627\u0647\u062f \u0628\u0648\u062f:\u00a0 \u00a0 host: server_ip_address.<\/li>\n<\/ul>\n<p style=\"text-align: justify;\"><b>\u0646\u06a9\u062a\u0647:<\/b> \u0647\u0646\u06af\u0627\u0645 \u0627\u06cc\u062c\u0627\u062f Pool\u060c \u062a\u0648\u0635\u06cc\u0647 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u0645 \u0645\u0642\u0627\u062f\u06cc\u0631 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc\u200c\u0634\u062f\u0647 \u0631\u0627 \u062f\u0631 \u0641\u0627\u06cc\u0644 \u062f\u06cc\u06af\u0631\u06cc \u0645\u0627\u0646\u0646\u062f \u0641\u0627\u06cc\u0644 env. \u0646\u06af\u0647 \u062f\u0627\u0631\u06cc\u062f. \u0633\u067e\u0633\u060c \u062f\u0631\u200c\u0635\u0648\u0631\u062a \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Git \u0627\u06cc\u0646 \u0641\u0627\u06cc\u0644 \u0631\u0627 \u0628\u0647 \u0641\u0627\u06cc\u0644 gitignore. \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f \u062a\u0627 \u0627\u0632 \u0631\u062f\u06cc\u0627\u0628\u06cc \u0622\u0646 \u0628\u0627 \u06a9\u0646\u062a\u0631\u0644 \u0646\u0633\u062e\u0647 \u062c\u0644\u0648\u06af\u06cc\u0631\u06cc \u0634\u0648\u062f. \u0645\u0632\u06cc\u062a \u0627\u06cc\u0646 \u0631\u0648\u0634 \u0622\u0646 \u0627\u0633\u062a \u06a9\u0647 \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u062d\u0633\u0627\u0633 \u0645\u0627\u0646\u0646\u062f \u0631\u0645\u0632\u0639\u0628\u0648\u0631 \u06a9\u0627\u0631\u0628\u0631 \u0648 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0634\u0645\u0627 \u0631\u0627 \u0627\u0632 \u062d\u0645\u0644\u0627\u062a \u0647\u06a9\u0631\u06cc \u067e\u0646\u0647\u0627\u0646 \u0645\u06cc\u200c\u06a9\u0646\u062f.<\/p>\n<p style=\"text-align: justify;\">\u0627\u06a9\u0646\u0648\u0646 \u0627\u062a\u0635\u0627\u0644 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0628\u0631\u0642\u0631\u0627\u0631 \u0645\u06cc\u200c\u0634\u0648\u062f \u0648 \u0622\u0628\u062c\u06a9\u062a Pool \u062f\u0631 \u0645\u062a\u063a\u06cc\u0631 pool \u0630\u062e\u06cc\u0631\u0647 \u0645\u06cc\u200c\u0634\u0648\u062f. \u0628\u0631\u0627\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0622\u0646 \u062f\u0631 \u0647\u0631\u062c\u0627\u06cc\u06cc \u0627\u0632 \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u062a\u0627\u0646\u060c \u0628\u0627\u06cc\u062f \u0622\u0646 \u0631\u0627 \u062e\u0627\u0631\u062c \u06a9\u0646\u06cc\u062f. \u062f\u0631 \u0641\u0627\u06cc\u0644 db.js\u060c \u06cc\u06a9 \u0646\u0645\u0648\u0646\u0647 \u0627\u0632 \u0622\u0628\u062c\u06a9\u062a Pool \u0631\u0627 \u0628\u062e\u0648\u0627\u0647\u06cc\u062f \u0648 \u0622\u0646 \u0631\u0627 \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f. \u0633\u067e\u0633\u060c \u062e\u0648\u0627\u0635 \u0648 \u0645\u0642\u0627\u062f\u06cc\u0631 \u0622\u0646 \u0631\u0627 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">const { Pool } = require(\"pg\");\r\n\r\nconst pool = new Pool({\r\n  user: \"fish_user\",\r\n  database: \"fish\",\r\n  password: \"password\",\r\n  port: 5432,\r\n  host: \"localhost\",\r\n});\r\n\r\nmodule.exports = { pool };<\/pre>\n<p style=\"text-align: justify;\">\u062f\u0631\u0646\u0647\u0627\u06cc\u062a\u060c \u0641\u0627\u06cc\u0644 \u0631\u0627 \u0630\u062e\u06cc\u0631\u0647 \u06a9\u0646\u06cc\u062f \u0648 \u0628\u0627 \u0641\u0634\u0627\u0631\u062f\u0627\u062f\u0646 \u06a9\u0644\u06cc\u062f\u0647\u0627\u06cc CTRL+X \u0627\u0632 nano \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f. \u0628\u0631\u0627\u06cc \u0630\u062e\u06cc\u0631\u0647 \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a\u060c \u062d\u0631\u0641 y \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f \u0648 \u0646\u0627\u0645 \u0641\u0627\u06cc\u0644\u062a\u0627\u0646 \u0631\u0627 \u0628\u0627 \u0641\u0634\u0627\u0631\u062f\u0627\u062f\u0646 \u06a9\u0644\u06cc\u062f Enter \u06cc\u0627 \u062f\u0631 \u0633\u06cc\u0633\u062a\u0645\u200c\u0639\u0627\u0645\u0644 Mac \u0628\u0627 \u0641\u0634\u0627\u0631\u062f\u0627\u062f\u0646 \u06a9\u0644\u06cc\u062f Return \u062a\u0623\u06cc\u06cc\u062f \u06a9\u0646\u06cc\u062f.<\/p>\n<p style=\"text-align: justify;\">\u0627\u06a9\u0646\u0648\u0646 \u06a9\u0647 \u0628\u0631\u0646\u0627\u0645\u0647 \u062e\u0648\u062f \u0631\u0627 \u0628\u0647 Postgres \u0645\u062a\u0635\u0644 \u06a9\u0631\u062f\u0647\u200c\u0627\u06cc\u062f\u060c \u0627\u0632 \u0627\u06cc\u0646 \u0627\u062a\u0635\u0627\u0644 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u0628\u0631\u0627\u06cc \u062f\u0631\u062c \u062f\u0627\u062f\u0647 \u062f\u0631 Postgres \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f.<\/p>\n<h2 style=\"text-align: justify;\"><span style=\"color: #3366ff;\"><b>\u0645\u0631\u062d\u0644\u0647 \u067e\u0646\u062c\u0645. \u062f\u0631\u062c \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 Postgres<\/b><\/span><\/h2>\n<p style=\"text-align: justify;\">\u062f\u0631 \u0627\u06cc\u0646 \u0645\u0631\u062d\u0644\u0647\u060c \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc\u200c\u06a9\u0646\u06cc\u062f \u06a9\u0647 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Connection Pool \u062f\u0631 \u0641\u0627\u06cc\u0644 db.js \u0627\u06cc\u062c\u0627\u062f \u0634\u062f\u0647 \u0627\u0633\u062a \u0648 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0631\u0627 \u0628\u0647 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 PostgreSQL \u0627\u0636\u0627\u0641\u0647 \u0645\u06cc\u200c\u06a9\u0646\u062f. \u0628\u0631\u0627\u06cc \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u0627\u0632 \u0627\u06cc\u0646\u06a9\u0647 \u0628\u0631\u0646\u0627\u0645\u0647 \u062f\u0631 \u0647\u0631\u0628\u0627\u0631 \u0627\u062c\u0631\u0627 \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641\u06cc \u0631\u0627 \u0648\u0627\u0631\u062f \u0645\u06cc\u200c\u06a9\u0646\u062f\u060c \u0628\u0647 \u0622\u0646 \u062a\u0648\u0627\u0628\u0639\u06cc \u062f\u0647\u06cc\u062f \u06a9\u0647 \u0622\u0631\u06af\u0648\u0645\u0627\u0646\u200c\u0647\u0627\u06cc \u06a9\u0627\u0645\u0646\u062f \u0644\u0627\u06cc\u0646 \u0631\u0627 \u0628\u067e\u0630\u06cc\u0631\u062f.<\/p>\n<p style=\"text-align: justify;\">\u062d\u0627\u0644\u0627 \u0641\u0627\u06cc\u0644 insertData.js \u0631\u0627 \u062f\u0631 \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u062a\u0627\u0646 \u0627\u06cc\u062c\u0627\u062f \u0648 \u0633\u067e\u0633 \u0628\u0627\u0632 \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">nano insertData.js<\/pre>\n<p style=\"text-align: justify;\">\u062f\u0631 \u0641\u0627\u06cc\u0644 insertData.js \u0628\u0631\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f \u0641\u0631\u0627\u06cc\u0646\u062f \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a\u060c \u0622\u0631\u06af\u0648\u0645\u0627\u0646\u200c\u0647\u0627\u06cc Command-Line \u0632\u06cc\u0631 \u0631\u0627 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">const { pool } = require(\".\/db\");\r\n\r\nasync function insertData() {\r\n  const [name, color] = process.argv.slice(2);\r\n  console.log(name, color);\r\n}\r\n\r\ninsertData();<\/pre>\n<p style=\"text-align: justify;\">\u0628\u0631\u0627\u06cc \u0627\u06cc\u0646\u06a9\u0647 \u0628\u062a\u0648\u0627\u0646\u06cc\u062f \u0628\u0647 \u0641\u0627\u06cc\u0644 db.js \u062f\u0633\u062a\u0631\u0633\u06cc \u067e\u06cc\u062f\u0627 \u06a9\u0646\u06cc\u062f\u060c \u0627\u0628\u062a\u062f\u0627 \u0628\u0647 Pool \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u06cc\u062f. \u0627\u06cc\u0646 \u0628\u0647 \u0628\u0631\u0646\u0627\u0645\u0647 \u0634\u0645\u0627 \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc\u200c\u062f\u0647\u062f \u0628\u0627 \u0627\u062a\u0635\u0627\u0644 \u0628\u0647 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u062f\u0631 \u0622\u0646 \u062c\u0633\u062a\u200c\u0648\u062c\u0648 \u06a9\u0646\u06cc\u062f. \u0633\u067e\u0633\u060c \u062a\u0627\u0628\u0639 ()insertData \u0631\u0627 \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 \u062a\u0627\u0628\u0639\u06cc \u0646\u0627\u0647\u0645\u06af\u0627\u0645 \u0628\u0627 \u06a9\u0644\u0645\u0647 \u06a9\u0644\u06cc\u062f\u06cc async \u0645\u0634\u062e\u0635 \u06a9\u0646\u06cc\u062f. \u0627\u06cc\u0646 \u06a9\u0627\u0631 \u0628\u0647 \u0634\u0645\u0627 \u0627\u0645\u06a9\u0627\u0646 \u0645\u06cc\u200c\u062f\u0647\u062f \u0627\u0632 \u06a9\u0644\u0645\u0647 \u06a9\u0644\u06cc\u062f\u06cc await \u0628\u0631\u0627\u06cc \u0646\u0627\u0647\u0645\u06af\u0627\u0645\u200c\u06a9\u0631\u062f\u0646 \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u200c\u0647\u0627\u06cc \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f.<\/p>\n<p style=\"text-align: justify;\">\u062f\u0631 \u062a\u0627\u0628\u0639 ()insertData\u060c \u0627\u0632 \u0645\u0627\u0698\u0648\u0644 process \u0628\u0631\u0627\u06cc \u062f\u0633\u062a\u0631\u0633\u06cc \u0628\u0647 command-line arguments \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f. \u0645\u062a\u062f Node.js process.argv \u0647\u0645\u0647 \u0622\u0631\u06af\u0648\u0645\u0627\u0646\u200c\u0647\u0627\u06cc \u06cc\u06a9 \u0622\u0631\u0627\u06cc\u0647 \u0634\u0627\u0645\u0644 node \u0648 insertData.js \u0631\u0627 \u0628\u0631\u0645\u06cc\u200c\u06af\u0631\u062f\u0627\u0646\u062f.<\/p>\n<p style=\"text-align: justify;\">\u0628\u0631\u0627\u06cc \u0645\u062b\u0627\u0644\u060c \u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a \u0631\u0627 \u062f\u0631 \u062a\u0631\u0645\u06cc\u0646\u0627\u0644\u06cc \u0628\u0627 node insertData.js sammy blue \u0627\u062c\u0631\u0627 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u062f\u060c \u0645\u062a\u062f process.argv \u06cc\u06a9 \u0622\u0631\u0627\u06cc\u0647 \u0631\u0627 \u0628\u0631\u0645\u06cc\u200c\u06af\u0631\u062f\u0627\u0646\u062f: [&#8216;node&#8217;, &#8216;insertData.js&#8217;, &#8216;sammy&#8217;, &#8216;blue&#8217;] (\u0627\u06cc\u0646 \u0622\u0631\u0627\u06cc\u0647\u200c\u0647\u0627 \u0628\u0631\u0627\u06cc \u0627\u062e\u062a\u0635\u0627\u0631 \u0646\u0648\u0634\u062a\u0647 \u0634\u062f\u0647 \u0627\u0633\u062a).<\/p>\n<p style=\"text-align: justify;\">\u0628\u0631\u0627\u06cc \u0631\u062f\u0634\u062f\u0646 \u0627\u0632 \u062f\u0648 \u0639\u0646\u0635\u0631 \u0627\u0648\u0644\u060c \u06cc\u0639\u0646\u06cc node \u0648 insertData.js\u060c \u0645\u062a\u062f ()slice \u062c\u0627\u0648\u0627\u0627\u0633\u06a9\u0631\u06cc\u067e\u062a \u0631\u0627 \u0628\u0647 \u0645\u062a\u062f process.argv \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f. \u0627\u06cc\u0646 \u0631\u0648\u0634 \u0639\u0646\u0627\u0635\u0631 \u0631\u0627 \u0627\u0632 \u0634\u0627\u062e\u0635 2 \u0628\u0647\u200c\u0628\u0639\u062f \u0628\u0627\u0632\u0645\u06cc\u200c\u06af\u0631\u062f\u0627\u0646\u062f. \u0633\u067e\u0633\u060c \u0627\u06cc\u0646 \u0622\u0631\u06af\u0648\u0645\u0627\u0646\u200c\u0647\u0627 \u0628\u0647 \u0645\u062a\u063a\u06cc\u0631\u0647\u0627\u06cc name and color \u062a\u0642\u0633\u06cc\u0645 \u0645\u06cc\u200c\u0634\u0648\u0646\u062f.<\/p>\n<p style=\"text-align: justify;\">\u0641\u0627\u06cc\u0644 \u062e\u0648\u062f \u0631\u0627 \u0630\u062e\u06cc\u0631\u0647 \u06a9\u0646\u06cc\u062f \u0648 \u0628\u0627 \u0641\u0634\u0627\u0631\u062f\u0627\u062f\u0646 \u06a9\u0644\u06cc\u062f\u0647\u0627\u06cc CTRL+X \u0627\u0632 nano \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f. \u062f\u0631\u0627\u062f\u0627\u0645\u0647\u060c \u0622\u0646 \u0631\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 node \u0627\u062c\u0631\u0627 \u0648 \u0622\u0631\u06af\u0648\u0645\u0627\u0646\u200c\u0647\u0627\u06cc sammy \u0648 blue \u0631\u0627 \u0628\u0647 \u0622\u0646 \u0627\u0631\u0633\u0627\u0644 \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">node insertData.js sammy blue<\/pre>\n<p style=\"text-align: justify;\">\u067e\u0633 \u0627\u0632 \u0627\u062c\u0631\u0627\u06cc \u062f\u0633\u062a\u0648\u0631\u060c \u062e\u0631\u0648\u062c\u06cc \u0632\u06cc\u0631 \u0631\u0627 \u0645\u0634\u0627\u0647\u062f\u0647 \u062e\u0648\u0627\u0647\u06cc\u062f \u06a9\u0631\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">Output\r\nsammy blue<\/pre>\n<p style=\"text-align: justify;\">\u062d\u0627\u0644\u0627 \u0627\u06cc\u0646 \u062a\u0627\u0628\u0639 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u062f \u0627\u0632\u0637\u0631\u06cc\u0642 \u0622\u0631\u06af\u0648\u0645\u0627\u0646\u200c\u0647\u0627\u06cc \u06a9\u0627\u0645\u0646\u062f \u0644\u0627\u06cc\u0646 \u0628\u0647 name and color Shark \u062f\u0633\u062a\u0631\u0633\u06cc \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u062f. \u062f\u0631 \u0645\u0631\u062d\u0644\u0647 \u0628\u0639\u062f\u060c \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u062a\u0627\u0628\u0639 ()insertData \u0631\u0627 \u0628\u0631\u0627\u06cc \u062f\u0631\u062c \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u062f\u0631 \u062c\u062f\u0648\u0644 Shark \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0647\u06cc\u062f.<\/p>\n<p style=\"text-align: justify;\">\u0641\u0627\u06cc\u0644 insertData.js \u0631\u0627 \u062f\u0648\u0628\u0627\u0631\u0647 \u062f\u0631 \u0648\u06cc\u0631\u0627\u06cc\u0634\u06af\u0631 \u0645\u062a\u0646 \u062e\u0648\u062f \u0628\u0627\u0632 \u0648 \u06a9\u062f \u0647\u0627\u06cc\u0644\u0627\u06cc\u062a\u200c\u0634\u062f\u0647 \u0632\u06cc\u0631 \u0631\u0627 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">const { pool } = require(\".\/db\");\r\n\r\nasync function insertData() {\r\n  const [name, color] = process.argv.slice(2);\r\n  const res = await pool.query(\r\n      \"INSERT INTO shark (name, color) VALUES ($1, $2)\",\r\n      [name, color]\r\n    );\r\n  console.log(`Added a shark with the name ${name}`);\r\n}\r\n\r\ninsertData();<\/pre>\n<p style=\"text-align: justify;\">\u0627\u06a9\u0646\u0648\u0646 \u062a\u0627\u0628\u0639 ()insertData \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u062f name and color \u0631\u0627 \u0645\u0634\u062e\u0635 \u06a9\u0646\u062f. \u0633\u067e\u0633\u060c \u0645\u062a\u062f pool.query \u0627\u0632 node-postgres \u0627\u0633\u062a \u06a9\u0647 \u0639\u0628\u0627\u0631\u062a SQL INSERT INTO Shark (\u0634\u0627\u0645\u0644 \u0646\u0627\u0645\u060c \u0631\u0646\u06af \u0648\u2026) \u0631\u0627 \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 \u0627\u0648\u0644\u06cc\u0646 \u0622\u0631\u06af\u0648\u0645\u0627\u0646 \u0645\u06cc\u200c\u06af\u06cc\u0631\u062f. SQL \u06cc\u06a9 \u0631\u06a9\u0648\u0631\u062f \u0631\u0627 \u062f\u0631 \u062c\u062f\u0648\u0644 Shark \u062f\u0631\u062c \u0648 \u0628\u0631\u0627\u06cc \u0627\u0646\u062c\u0627\u0645 \u0627\u06cc\u0646 \u06a9\u0627\u0631\u060c \u0627\u0632 \u06a9\u0648\u0626\u0631\u06cc parameterized \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc\u200c\u06a9\u0646\u062f. $1 \u0648 $2 \u0645\u0631\u0628\u0648\u0637 \u0628\u0647 \u0646\u0627\u0645 \u0648 \u0645\u062a\u063a\u06cc\u0631\u0647\u0627\u06cc \u0631\u0646\u06af \u062f\u0631 \u0622\u0631\u0627\u06cc\u0647 \u0627\u0631\u0627\u0626\u0647\u200c\u0634\u062f\u0647 \u062f\u0631 \u0645\u062a\u062f ()pool.query \u0648 \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 \u0622\u0631\u06af\u0648\u0645\u0627\u0646 \u062f\u0648\u0645 \u0627\u0633\u062a [name, color].<\/p>\n<p style=\"text-align: justify;\">\u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 Postgres \u062f\u0633\u062a\u0648\u0631 \u0631\u0627 \u0627\u062c\u0631\u0627 \u0645\u06cc\u200c\u06a9\u0646\u062f\u060c \u0645\u062a\u063a\u06cc\u0631\u0647\u0627 \u0627\u0632 \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u062a\u0627\u0646 \u062f\u0631\u200c\u0628\u0631\u0627\u0628\u0631 \u0648\u0631\u0648\u062f SQL \u0645\u062d\u0627\u0641\u0638\u062a \u0645\u06cc\u200c\u06a9\u0646\u0646\u062f. \u067e\u0633 \u0627\u0632 \u0627\u062c\u0631\u0627\u06cc \u06a9\u0648\u0626\u0631\u06cc\u060c \u062a\u0627\u0628\u0639 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 ()console.log \u067e\u06cc\u0627\u0645\u06cc \u0645\u0648\u0641\u0642\u06cc\u062a\u200c\u0622\u0645\u06cc\u0632 \u062b\u0628\u062a \u0645\u06cc\u200c\u06a9\u0646\u062f.<\/p>\n<p style=\"text-align: justify;\">\u0642\u0628\u0644 \u0627\u0632 \u0627\u062c\u0631\u0627\u06cc \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a\u060c \u06a9\u062f \u0631\u0627 \u062f\u0631\u0648\u0646 \u062a\u0627\u0628\u0639 ()insertData \u062f\u0631 \u06cc\u06a9 \u0633\u062f try&#8230;catch \u0646\u06af\u0647 \u062f\u0627\u0631\u06cc\u062f \u062a\u0627 \u062f\u0631 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627\u060c \u062e\u0637\u0627\u0647\u0627 \u0631\u0627 \u0645\u062f\u06cc\u0631\u06cc\u062a \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">const { pool } = require(\".\/db\");\r\n\r\nasync function insertData() {\r\n  const [name, color] = process.argv.slice(2);\r\n  try {\r\n    const res = await pool.query(\r\n      \"INSERT INTO shark (name, color) VALUES ($1, $2)\",\r\n      [name, color]\r\n    );\r\n    console.log(`Added a shark with the name ${name}`);\r\n  } catch (error) {\r\n    console.error(error)\r\n  }\r\n}\r\n\r\ninsertData()<\/pre>\n<p style=\"text-align: justify;\">\u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u062a\u0627\u0628\u0639 \u0627\u062c\u0631\u0627 \u0645\u06cc\u200c\u0634\u0648\u062f\u060c \u06a9\u062f \u062f\u0627\u062e\u0644 \u0633\u062f try \u0627\u062c\u0631\u0627 \u062e\u0648\u0627\u0647\u062f \u0634\u062f. \u062f\u0631\u0635\u0648\u0631\u062a \u0645\u0648\u0641\u0642\u06cc\u062a\u200c\u0622\u0645\u06cc\u0632\u0628\u0648\u062f\u0646\u060c \u062a\u0627\u0628\u0639 \u0633\u062f catch \u0631\u0627 \u0631\u062f \u0645\u06cc\u200c\u06a9\u0646\u062f \u0648 \u062e\u0627\u0631\u062c \u0645\u06cc\u200c\u0634\u0648\u062f. \u0628\u0627\u0627\u06cc\u0646\u200c\u062d\u0627\u0644\u060c \u0627\u06af\u0631 \u062e\u0637\u0627\u06cc\u06cc \u062f\u0631 \u062f\u0627\u062e\u0644 try \u0641\u0639\u0627\u0644 \u0634\u0648\u062f\u060c \u0633\u062f catch \u0627\u062c\u0631\u0627 \u0645\u06cc\u200c\u0634\u0648\u062f \u0648 \u062e\u0637\u0627 \u0631\u0627 \u062f\u0631 \u06a9\u0646\u0633\u0648\u0644 \u062b\u0628\u062a \u0645\u06cc\u200c\u06a9\u0646\u062f.<\/p>\n<p style=\"text-align: justify;\">\u062d\u0627\u0644\u0627 \u0628\u0631\u0646\u0627\u0645\u0647 \u0634\u0645\u0627 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u062f \u0622\u0631\u06af\u0648\u0645\u0627\u0646\u200c\u0647\u0627\u06cc \u06a9\u0627\u0645\u0646\u062f \u0644\u0627\u06cc\u0646 \u0631\u0627 \u0628\u06af\u06cc\u0631\u062f \u0648 \u0627\u0632 \u0622\u0646\u200c\u0647\u0627 \u0628\u0631\u0627\u06cc \u062f\u0631\u062c \u0631\u06a9\u0648\u0631\u062f \u062f\u0631 \u062c\u062f\u0648\u0644 Shark \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u062f. \u062f\u0631\u0627\u062f\u0627\u0645\u0647\u060c \u062f\u0627\u062f\u0647 \u0631\u0627 \u0630\u062e\u06cc\u0631\u0647 \u06a9\u0646\u06cc\u062f \u0648 \u0627\u0632 \u0648\u06cc\u0631\u0627\u06cc\u0634\u06af\u0631 \u0645\u062a\u0646 \u062e\u0648\u062f \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f. \u067e\u0633\u200c\u0627\u0632\u0622\u0646\u060c \u0641\u0627\u06cc\u0644 insertData.js \u0631\u0627 \u0628\u0627 sammy \u0648 blue \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 \u0622\u0631\u06af\u0648\u0645\u0627\u0646\u200c\u0647\u0627\u06cc \u06a9\u0627\u0645\u0646\u062f \u0644\u0627\u06cc\u0646 \u0627\u062c\u0631\u0627 \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">node insertData.js sammy blue<\/pre>\n<p style=\"text-align: justify;\">\u0627\u06a9\u0646\u0648\u0646\u060c \u062e\u0631\u0648\u062c\u06cc \u0632\u06cc\u0631 \u0631\u0627 \u062f\u0631\u06cc\u0627\u0641\u062a \u062e\u0648\u0627\u0647\u06cc\u062f \u06a9\u0631\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">Output\r\nAdded a shark with the name sammy<\/pre>\n<p style=\"text-align: justify;\">\u0633\u067e\u0633\u060c \u0641\u0627\u06cc\u0644 \u0631\u0627 \u062f\u0648\u0628\u0627\u0631\u0647 \u0628\u0627 jose \u0648 teal \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 \u0622\u0631\u06af\u0648\u0645\u0627\u0646\u200c\u0647\u0627\u06cc Command-Line \u0627\u062c\u0631\u0627 \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">node insertData.js jose teal<\/pre>\n<p style=\"text-align: justify;\">\u062e\u0631\u0648\u062c\u06cc \u0628\u0647\u200c\u062f\u0633\u062a\u200c\u0622\u0645\u062f\u0647 \u0645\u0634\u0627\u0628\u0647 \u0634\u06a9\u0644 \u0632\u06cc\u0631 \u062e\u0648\u0627\u0647\u062f \u0628\u0648\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">Output\r\nAdded a shark with the name jose<\/pre>\n<p style=\"text-align: justify;\">\u0627\u06cc\u0646 \u0646\u062a\u06cc\u062c\u0647 \u062a\u0623\u06cc\u06cc\u062f \u0645\u06cc\u200c\u06a9\u0646\u062f \u06a9\u0647 \u0634\u0645\u0627 \u0631\u06a9\u0648\u0631\u062f \u062f\u06cc\u06af\u0631\u06cc \u0631\u0627 \u0628\u0627 \u0646\u0627\u0645 jose \u0648 \u0631\u0646\u06af teal \u062f\u0631 \u062c\u062f\u0648\u0644 Shark \u0648\u0627\u0631\u062f \u06a9\u0631\u062f\u0647\u200c\u0627\u06cc\u062f \u0648 \u0627\u06a9\u0646\u0648\u0646 \u062f\u0648 \u0631\u06a9\u0648\u0631\u062f \u062f\u0631 \u062c\u062f\u0648\u0644 Shark \u062f\u0627\u0631\u06cc\u062f.<\/p>\n<h2 style=\"text-align: justify;\"><span style=\"color: #3366ff;\"><b>\u0645\u0631\u062d\u0644\u0647 \u0634\u0634\u0645. \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0627\u0632 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 Postgres<\/b><\/span><\/h2>\n<p style=\"text-align: justify;\">\u062f\u0631 \u0627\u06cc\u0646 \u0645\u0631\u062d\u0644\u0647\u060c \u062a\u0645\u0627\u0645 \u0631\u06a9\u0648\u0631\u062f\u0647\u0627\u06cc \u062c\u062f\u0648\u0644 Shark \u0631\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 node-postgres \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0648 \u0622\u0646\u200c\u0647\u0627 \u0631\u0627 \u0628\u0647 \u06a9\u0646\u0633\u0648\u0644 \u06cc\u0627 \u067e\u0648\u0633\u062a\u0647 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f. \u0628\u0631\u0627\u06cc \u0627\u06cc\u0646 \u06a9\u0627\u0631\u060c \u0641\u0627\u06cc\u0644 retrieveData.js \u0631\u0627 \u062f\u0631 \u0648\u06cc\u0631\u0627\u06cc\u0634\u06af\u0631 \u0645\u062a\u0646 \u062f\u0644\u062e\u0648\u0627\u0647\u062a\u0627\u0646 \u0627\u06cc\u062c\u0627\u062f \u0648 \u0628\u0627\u0632 \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">nano retrieveData.js<\/pre>\n<p style=\"text-align: justify;\">\u062f\u0631 retrieveData.js\u060c \u0628\u0631\u0627\u06cc \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0627\u0632 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0627\u0632 \u06a9\u062f \u0632\u06cc\u0631 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">const { pool } = require(\".\/db\");\r\n\r\nasync function retrieveData() {\r\n  try {\r\n    const res = await pool.query(\"SELECT * FROM shark\");\r\n    console.log(res.rows);\r\n  } catch (error) {\r\n    console.error(error);\r\n  }\r\n}\r\n\r\nretrieveData()<\/pre>\n<p style=\"text-align: justify;\">\u062a\u0627\u0628\u0639 ()retrieveData \u062a\u0645\u0627\u0645 \u0631\u062f\u06cc\u0641\u200c\u0647\u0627\u06cc \u062c\u062f\u0648\u0644 Shark \u0631\u0627 \u0645\u06cc\u200c\u062e\u0648\u0627\u0646\u062f \u0648 \u0622\u0646\u200c\u0647\u0627 \u0631\u0627 \u062f\u0631 \u06a9\u0646\u0633\u0648\u0644 \u062b\u0628\u062a \u0645\u06cc\u200c\u06a9\u0646\u062f. \u0628\u0627 \u062a\u0627\u0628\u0639 try\u060c \u0645\u062a\u062f ()pool.query \u0631\u0627 \u0627\u0632 node-postgres \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u062f\u0633\u062a\u0648\u0631 SQL \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 \u0622\u0631\u06af\u0648\u0645\u0627\u0646 \u0641\u0631\u0627\u062e\u0648\u0627\u0646\u06cc \u06a9\u0646\u06cc\u062f. \u0639\u0628\u0627\u0631\u062a SQL SELECT * FROM Shark \u062a\u0645\u0627\u0645 \u0631\u06a9\u0648\u0631\u062f\u0647\u0627\u06cc \u062c\u062f\u0648\u0644 Shark \u0631\u0627 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0645\u06cc\u200c\u06a9\u0646\u062f. \u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0634\u062f\u0646\u062f\u060c \u0639\u0628\u0627\u0631\u062a ()console.log \u0631\u062f\u06cc\u0641\u200c\u0647\u0627 \u0631\u0627 \u062b\u0628\u062a \u0645\u06cc\u200c\u06a9\u0646\u062f.<\/p>\n<p style=\"text-align: justify;\">\u0627\u06af\u0631 \u062e\u0637\u0627\u06cc\u06cc \u0627\u06cc\u062c\u0627\u062f \u0634\u0648\u062f\u060c \u0628\u0631\u0646\u0627\u0645\u0647 \u0627\u062c\u0631\u0627\u0634\u062f\u0647 \u0628\u0647 \u0633\u062f catch \u067e\u0631\u0634 \u0648 \u062e\u0637\u0627 \u0631\u0627 \u062b\u0628\u062a \u0645\u06cc\u200c\u06a9\u0646\u062f. \u062f\u0631 \u062e\u0637 \u0622\u062e\u0631\u060c \u062a\u0627\u0628\u0639 ()retrieveData \u0631\u0627 \u0641\u0631\u0627\u062e\u0648\u0627\u0646\u06cc \u06a9\u0646\u06cc\u062f.<\/p>\n<p style=\"text-align: justify;\">\u0627\u06a9\u0646\u0648\u0646\u060c \u0648\u06cc\u0631\u0627\u06cc\u0634\u06af\u0631 \u062e\u0648\u062f \u0631\u0627 \u0630\u062e\u06cc\u0631\u0647 \u06a9\u0646\u06cc\u062f \u0648 \u0628\u0628\u0646\u062f\u06cc\u062f. \u0633\u067e\u0633\u060c \u0641\u0627\u06cc\u0644 retrieveData.js \u0631\u0627 \u0627\u062c\u0631\u0627 \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">node retrieveData.js<\/pre>\n<p style=\"text-align: justify;\">\u062f\u0631\u200c\u0627\u062f\u0627\u0645\u0647\u060c \u062e\u0631\u0648\u062c\u06cc\u200c\u0627\u06cc \u0645\u0634\u0627\u0628\u0647 \u062e\u0631\u0648\u062c\u06cc \u0632\u06cc\u0631 \u0631\u0627 \u0645\u0634\u0627\u0647\u062f\u0647 \u062e\u0648\u0627\u0647\u06cc\u062f \u06a9\u0631\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">Output\r\n[\r\n  { id: 1, name: 'sammy', color: 'blue' },\r\n  { id: 2, name: 'jose', color: 'teal' }\r\n]<\/pre>\n<p style=\"text-align: justify;\">node-postgres \u0631\u062f\u06cc\u0641\u200c\u0647\u0627\u06cc \u062c\u062f\u0648\u0644 \u0631\u0627 \u062f\u0631 \u0622\u0628\u062c\u06a9\u062a JSON\u0645\u0627\u0646\u0646\u062f \u0628\u0631\u0645\u06cc\u200c\u06af\u0631\u062f\u0627\u0646\u062f. \u0627\u06cc\u0646 \u0627\u0634\u06cc\u0627\u0621 \u062f\u0631 \u06cc\u06a9 \u0622\u0631\u0627\u06cc\u0647 \u0630\u062e\u06cc\u0631\u0647 \u0645\u06cc\u200c\u0634\u0648\u0646\u062f. \u0627\u06a9\u0646\u0648\u0646\u060c \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0631\u0627 \u0627\u0632 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u06a9\u0646\u06cc\u062f \u0648 \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u062c\u062f\u0648\u0644 \u0631\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 node-postgres \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0647\u06cc\u062f.<\/p>\n<h2 style=\"text-align: justify;\"><span style=\"color: #3366ff;\"><b>\u0645\u0631\u062d\u0644\u0647 \u0647\u0641\u062a\u0645. \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 Postgres<\/b><\/span><\/h2>\n<p style=\"text-align: justify;\">\u062f\u0631 \u0627\u06cc\u0646 \u0645\u0631\u062d\u0644\u0647\u060c \u0627\u0632 node-postgres \u0628\u0631\u0627\u06cc \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 Postgres \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f. \u0627\u06cc\u0646 \u062d\u0627\u0644\u062a \u0628\u0647 \u0634\u0645\u0627 \u0627\u0645\u06a9\u0627\u0646 \u0645\u06cc\u200c\u062f\u0647\u062f \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0631\u0627 \u062f\u0631 \u0647\u0631\u06cc\u06a9 \u0627\u0632 \u0631\u06a9\u0648\u0631\u062f\u0647\u0627\u06cc \u062c\u062f\u0648\u0644 Shark \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0647\u06cc\u062f. \u0634\u0645\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a\u06cc \u0627\u06cc\u062c\u0627\u062f \u062e\u0648\u0627\u0647\u06cc\u062f \u06a9\u0631\u062f \u06a9\u0647 \u0627\u0632 \u062f\u0648 \u0622\u0631\u06af\u0648\u0645\u0627\u0646 \u06a9\u0627\u0645\u0646\u062f \u0644\u0627\u06cc\u0646 \u06cc\u0639\u0646\u06cc\u060c id \u0648 name\u060c \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc\u200c\u06a9\u0646\u062f. \u0645\u0642\u062f\u0627\u0631 id \u0631\u0627 \u0628\u0631\u0627\u06cc \u0627\u0646\u062a\u062e\u0627\u0628 \u0631\u06a9\u0648\u0631\u062f \u0645\u062f\u0646\u0638\u0631 \u062f\u0631 \u062c\u062f\u0648\u0644 \u0628\u0647\u200c\u06a9\u0627\u0631 \u0645\u06cc\u200c\u06af\u06cc\u0631\u06cc\u062f \u0648 \u0622\u0631\u06af\u0648\u0645\u0627\u0646 name \u0646\u06cc\u0632 \u0645\u0642\u062f\u0627\u0631 \u062c\u062f\u06cc\u062f\u06cc \u0628\u0631\u0627\u06cc \u0631\u06a9\u0648\u0631\u062f\u06cc \u0627\u0633\u062a \u06a9\u0647 \u0645\u06cc\u200c\u062e\u0648\u0627\u0647\u06cc\u062f \u0646\u0627\u0645\u0634 \u0631\u0627 \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0647\u06cc\u062f.<\/p>\n<p style=\"text-align: justify;\">\u0627\u0628\u062a\u062f\u0627 \u0641\u0627\u06cc\u0644 modifyData.js \u0631\u0627 \u0627\u06cc\u062c\u0627\u062f \u0648 \u0633\u067e\u0633 \u0628\u0627\u0632 \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">nano modifyData.js<\/pre>\n<p style=\"text-align: justify;\">\u062f\u0631 \u0641\u0627\u06cc\u0644 modifyData.js \u062e\u0648\u062f\u060c \u06a9\u062f \u0632\u06cc\u0631 \u0631\u0627 \u0628\u0631\u0627\u06cc \u062a\u063a\u06cc\u06cc\u0631 \u0631\u06a9\u0648\u0631\u062f \u062f\u0631 \u062c\u062f\u0648\u0644 Shark \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">const { pool } = require(\".\/db\");\r\n\r\nasync function modifyData() {\r\n  const [id, name] = process.argv.slice(2);\r\n  try {\r\n    const res = await pool.query(\"UPDATE shark SET name = $1 WHERE id = $2\", [\r\n      name,\r\n      id,\r\n    ]);\r\n    console.log(`Updated the shark name to ${name}`);\r\n  } catch (error) {\r\n    console.error(error);\r\n  }\r\n}\r\n\r\nmodifyData();<\/pre>\n<p style=\"text-align: justify;\">\u0627\u0628\u062a\u062f\u0627\u060c \u0628\u0647 \u0622\u0628\u062c\u06a9\u062a pool \u0627\u0632 \u0641\u0627\u06cc\u0644 db.js \u062f\u0631 \u0641\u0627\u06cc\u0644 modifyData.js \u062e\u0648\u062f \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u06cc\u062f. \u062f\u0631 \u0645\u0631\u062d\u0644\u0647 \u0628\u0639\u062f\u060c \u062a\u0627\u0628\u0639 \u0646\u0627\u0647\u0645\u06af\u0627\u0645 ()modifyData \u0631\u0627 \u0628\u0631\u0627\u06cc \u062a\u063a\u06cc\u06cc\u0631 \u0631\u06a9\u0648\u0631\u062f \u062f\u0631 Postgres \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f. \u062f\u0631 \u062f\u0627\u062e\u0644 \u062a\u0627\u0628\u0639\u060c \u062f\u0648 \u0645\u062a\u063a\u06cc\u0631 id \u0648 name \u0631\u0627 \u0627\u0632 \u0622\u0631\u06af\u0648\u0645\u0627\u0646\u200c\u0647\u0627\u06cc \u06a9\u0627\u0645\u0646\u062f \u0644\u0627\u06cc\u0646 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0645\u0623\u0645\u0648\u0631 \u062a\u062e\u0631\u06cc\u0628 \u0633\u0627\u062e\u062a\u0627\u0631 \u062a\u0639\u0631\u06cc\u0641 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u062f.<\/p>\n<p style=\"text-align: justify;\">\u0628\u0627 \u0633\u062f try\u060c \u0645\u062a\u062f pool.query \u0631\u0627 \u0627\u0632 node-postgres \u0628\u0627 \u0627\u0631\u0633\u0627\u0644 \u0639\u0628\u0627\u0631\u062a SQL \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 \u0627\u0648\u0644\u06cc\u0646 \u0622\u0631\u06af\u0648\u0645\u0627\u0646 \u0641\u0631\u0627\u062e\u0648\u0627\u0646\u06cc \u06a9\u0646\u06cc\u062f. \u062f\u0631 \u062f\u0633\u062a\u0648\u0631 UPDATE SQL\u060c \u0628\u0627 \u062f\u0631\u062c \u0639\u0628\u0627\u0631\u062a WHERE \u0631\u06a9\u0648\u0631\u062f\u06cc \u0631\u0627 \u0627\u0646\u062a\u062e\u0627\u0628 \u06a9\u0646\u06cc\u062f \u06a9\u0647 \u0628\u0627 \u0645\u0642\u062f\u0627\u0631 \u0634\u0646\u0627\u0633\u0647 \u0645\u0637\u0627\u0628\u0642\u062a \u062f\u0627\u0631\u062f.<\/p>\n<p style=\"text-align: justify;\">\u067e\u0633 \u0627\u0632 \u0627\u0646\u062a\u062e\u0627\u0628\u060c SET name = $1 \u0645\u0642\u062f\u0627\u0631 \u062f\u0631 \u0642\u0633\u0645\u062a \u0646\u0627\u0645 \u0631\u0627 \u0628\u0647 \u0645\u0642\u062f\u0627\u0631 \u062c\u062f\u06cc\u062f\u06cc \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0647\u062f. \u0633\u067e\u0633\u060c console.log \u067e\u06cc\u0627\u0645\u06cc \u0631\u0627 \u062b\u0628\u062a \u0645\u06cc\u200c\u06a9\u0646\u062f \u06a9\u0647 \u0628\u0639\u062f \u0627\u0632 \u062a\u063a\u06cc\u06cc\u0631 \u0646\u0627\u0645 \u0631\u06a9\u0648\u0631\u062f \u0627\u062c\u0631\u0627 \u0645\u06cc\u200c\u0634\u0648\u062f. \u062f\u0631\u0646\u0647\u0627\u06cc\u062a\u060c \u062a\u0627\u0628\u0639 ()modifyData \u0631\u0627 \u062f\u0631 \u0622\u062e\u0631\u06cc\u0646 \u062e\u0637 \u0641\u0631\u0627\u062e\u0648\u0627\u0646\u06cc \u06a9\u0646\u06cc\u062f.<\/p>\n<p style=\"text-align: justify;\">\u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 CTRL+X\u060c \u0641\u0627\u06cc\u0644 \u0631\u0627 \u0630\u062e\u06cc\u0631\u0647 \u06a9\u0646\u06cc\u062f \u0648 \u0627\u0632 \u0622\u0646 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f. \u0641\u0627\u06cc\u0644 modifyData.js \u0631\u0627 \u0628\u0627 \u062f\u0631\u062c \u0639\u062f\u062f 2 \u0648 san \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 \u0622\u0631\u06af\u0648\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">node modifyData.js 2 san<\/pre>\n<p style=\"text-align: justify;\">\u0628\u0647\u200c\u062f\u0646\u0628\u0627\u0644 \u06a9\u0627\u0645\u0646\u062f \u0642\u0628\u0644\u06cc\u060c \u062e\u0631\u0648\u062c\u06cc \u0632\u06cc\u0631 \u0631\u0627 \u062f\u0631\u06cc\u0627\u0641\u062a \u062e\u0648\u0627\u0647\u06cc\u062f \u06a9\u0631\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">Output\r\nUpdated the shark name to san<\/pre>\n<p style=\"text-align: justify;\">\u0628\u0631\u0627\u06cc \u062a\u0623\u06cc\u06cc\u062f \u0627\u06cc\u0646\u06a9\u0647 \u0646\u0627\u0645 \u0631\u06a9\u0648\u0631\u062f \u0627\u0632 jose \u0628\u0647 san \u062a\u063a\u06cc\u06cc\u0631 \u06a9\u0631\u062f\u0647 \u0627\u0633\u062a\u060c \u0641\u0627\u06cc\u0644 retrieveData.js \u0631\u0627 \u0627\u062c\u0631\u0627 \u06a9\u0646\u06cc\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">node retrieveData.js<\/pre>\n<p style=\"text-align: justify;\">\u062f\u0631\u0646\u0647\u0627\u06cc\u062a\u060c \u062e\u0631\u0648\u062c\u06cc \u0645\u0634\u0627\u0628\u0647 \u062e\u0631\u0648\u062c\u06cc \u0632\u06cc\u0631 \u0631\u0627 \u062f\u0631\u06cc\u0627\u0641\u062a \u062e\u0648\u0627\u0647\u06cc\u062f \u06a9\u0631\u062f:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">Output\r\noutput\r\n[\r\n  { id: 1, name: 'sammy', color: 'blue' },\r\n  { id: 2, name: 'san', color: 'teal' }\r\n]<\/pre>\n<p style=\"text-align: justify;\">\u062d\u0627\u0644\u0627 \u0628\u0627\u06cc\u062f \u0628\u0628\u06cc\u0646\u06cc\u062f \u06a9\u0647 \u0631\u06a9\u0648\u0631\u062f \u0628\u0627 \u0634\u0646\u0627\u0633\u0647 2 \u0646\u0627\u0645 \u062c\u062f\u06cc\u062f san \u0628\u0647\u200c\u062c\u0627\u06cc jose \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u062f. \u0628\u0627 \u0627\u0646\u062c\u0627\u0645 \u0627\u06cc\u0646 \u06a9\u0627\u0631\u060c \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0631\u06a9\u0648\u0631\u062f\u06cc \u0631\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 node-postgres \u0628\u0627 \u0645\u0648\u0641\u0642\u06cc\u062a \u0628\u0647\u200c\u0631\u0648\u0632 \u06a9\u0631\u062f\u0647\u200c\u0627\u06cc\u062f.<\/p>\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" data-loaded=\"true\" src=\"https:\/\/parspack.com\/blog\/wp-content\/uploads\/2022\/08\/How-Use-PostgreSQL-With-Node-2.jpg\" class=\"wp-image-27566 size-full\" alt=\"\u06a9\u0627\u0631 \u0628\u0627 postgresql\" title=\"\u062a\u063a\u06cc\u06cc\u0631 \u062f\u0627\u062f\u0647 \u0647\u0627 \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 Postgres\"       width=\"750\" height=\"234\" srcset=\"https:\/\/parspack.com\/blog\/wp-content\/uploads\/2022\/08\/How-Use-PostgreSQL-With-Node-2.jpg 750w, https:\/\/parspack.com\/blog\/wp-content\/uploads\/2022\/08\/How-Use-PostgreSQL-With-Node-2-300x94.jpg 300w\" sizes=\"auto, (max-width: 750px) 100vw, 750px\" \/><figcaption class=\"text-subtitle-5 text-gray-9 text-center mt-2\" >\u0686\u06af\u0648\u0646\u0647 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0631\u0627 \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 Postgres \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0647\u06cc\u0645\u061f<\/figcaption><\/figure>\n<h2 style=\"text-align: justify;\"><span style=\"color: #3366ff;\"><b>\u062c\u0645\u0639\u200c\u0628\u0646\u062f\u06cc<\/b><\/span><\/h2>\n<p style=\"text-align: justify;\">\u062f\u0631 \u0627\u06cc\u0646 \u0645\u0642\u0627\u0644\u0647 \u0627\u0632 <a title=\"\u0622\u0645\u0648\u0632\u0634 \u0631\u0627\u06cc\u06af\u0627\u0646 \u0633\u06cc\u0633\u062a\u0645 \u0639\u0627\u0645\u0644\" href=\"\/blog\/os\" target=\"_blank\" rel=\"noopener\">\u0622\u0645\u0648\u0632\u0634 \u0633\u06cc\u0633\u062a\u0645 \u0639\u0627\u0645\u0644<\/a> \u0648 <a href=\"https:\/\/parspack.com\/blog\/os\/linux\">\u0622\u0645\u0648\u0632\u0634 \u0644\u06cc\u0646\u0648\u06a9\u0633<\/a>\u060c \u0646\u062d\u0648\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 PostgreSQL \u0628\u0627 Node \u0631\u0627 \u0622\u0645\u0648\u0632\u0634 \u0648 \u0628\u0647 \u0634\u0645\u0627 \u0646\u0634\u0627\u0646 \u062f\u0627\u062f\u06cc\u0645 \u06a9\u0647 \u0686\u06af\u0648\u0646\u0647 \u0627\u0632 node-postgres \u0628\u0631\u0627\u06cc \u0627\u062a\u0635\u0627\u0644 \u0648 \u062c\u0633\u062a\u200c\u0648\u062c\u0648 \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 Postgres \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f. \u0628\u0631\u0627\u06cc \u0627\u0646\u062c\u0627\u0645 \u0627\u06cc\u0646 \u06a9\u0627\u0631\u060c \u0646\u062e\u0633\u062a \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0648 \u06cc\u06a9 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647 \u0631\u0627 \u062f\u0631 Postgres \u0627\u06cc\u062c\u0627\u062f \u06a9\u0631\u062f\u06cc\u0645. \u0633\u067e\u0633 \u0628\u0627 \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u062c\u062f\u0648\u0644\u060c \u0628\u0631\u0646\u0627\u0645\u0647 \u062e\u0648\u062f \u0631\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 node-postgres \u0645\u062a\u0635\u0644 \u0633\u0627\u062e\u062a\u06cc\u0645 \u0648 \u062f\u0631 \u0622\u062e\u0631 \u0628\u0627 \u06a9\u0645\u06a9 \u0645\u0627\u0698\u0648\u0644\u200c\u0647\u0627\u06cc node-postgres\u060c \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0631\u0627 \u062f\u0631 Postgres \u062f\u0631\u062c \u0648 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0648 \u0627\u0635\u0644\u0627\u062d \u06a9\u0631\u062f\u06cc\u0645.<\/p>\n<p style=\"text-align: justify;\">\u0627\u0645\u06cc\u062f\u0648\u0627\u0631\u06cc\u0645 \u06a9\u0647 \u0627\u06cc\u0646 \u0622\u0645\u0648\u0632\u0634 \u0628\u0631\u0627\u06cc\u062a\u0627\u0646 \u0645\u0641\u06cc\u062f \u0628\u0648\u062f\u0647 \u0628\u0627\u0634\u062f. \u0634\u0645\u0627 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u0633\u0624\u0627\u0644\u200c\u0647\u0627 \u0648 \u0627\u0628\u0647\u0627\u0645\u200c\u0647\u0627\u06cc \u062e\u0648\u062f \u062f\u0631\u0628\u0627\u0631\u0647 \u0627\u06cc\u0646 \u0622\u0645\u0648\u0632\u0634 \u0631\u0627 \u0628\u0627 \u06a9\u0627\u0631\u0634\u0646\u0627\u0633\u0627\u0646 \u067e\u0627\u0631\u0633 \u067e\u06a9 \u0628\u0647\u200c\u0627\u0634\u062a\u0631\u0627\u06a9 \u0628\u06af\u0630\u0627\u0631\u06cc\u062f \u0648 \u0631\u0627\u0647\u0646\u0645\u0627\u06cc\u06cc\u200c\u0647\u0627\u06cc \u0644\u0627\u0632\u0645 \u0631\u0627 \u062f\u0631\u06cc\u0627\u0641\u062a \u06a9\u0646\u06cc\u062f.<\/p>\n<h2 style=\"text-align: justify;\"><span style=\"color: #3366ff;\"><b>\u0633\u0624\u0627\u0644\u0627\u062a \u0645\u062a\u062f\u0627\u0648\u0644<\/b><\/span><\/h2>\n<h3 style=\"text-align: justify;\"><span style=\"color: #0000ff;\"><b>\u06f1. \u0686\u06af\u0648\u0646\u0647 \u0628\u0627 Node.js \u0628\u0647 PostgreSQL \u0645\u062a\u0635\u0644 \u0634\u0648\u06cc\u0645\u061f<\/b><\/span><\/h3>\n<p style=\"text-align: justify;\">\u0646\u062d\u0648\u0647 \u0627\u062a\u0635\u0627\u0644 PostgreSQL \u0628\u0647 \u062f\u0631\u0627\u06cc\u0648\u0631 Node.js \u0628\u0647\u200c\u0635\u0648\u0631\u062a \u0632\u06cc\u0631 \u0627\u0633\u062a:<\/p>\n<ul style=\"text-align: justify;\">\n<li aria-level=\"1\">\u067e\u0633\u0648\u0646\u062f PostgreSQL \u0631\u0627 \u0628\u0631\u0627\u06cc Node.js \u0648 \u0646\u06cc\u0632 npm \u0631\u0627 \u0646\u0635\u0628 \u06a9\u0646\u06cc\u062f.<\/li>\n<li aria-level=\"1\">\u0627\u0637\u0644\u0627\u0639\u0627\u062a PostgreSQL \u0631\u0627 \u062f\u0631 \u0635\u0641\u062d\u0647 \u062c\u0632\u0626\u06cc\u0627\u062a \u0622\u0646 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f\u061b \u0627\u0632\u062c\u0645\u0644\u0647:<\/li>\n<\/ul>\n<ol style=\"text-align: justify;\">\n<li aria-level=\"1\">\u0646\u0627\u0645 \u06a9\u0627\u0631\u0628\u0631\u06cc<\/li>\n<li aria-level=\"1\">\u06a9\u0644\u0645\u0647 \u0639\u0628\u0648\u0631<\/li>\n<li aria-level=\"1\">\u0646\u0627\u0645 \u0647\u0627\u0633\u062a<\/li>\n<li aria-level=\"1\">\u067e\u0648\u0631\u062a (\u067e\u06cc\u0634\u200c\u0641\u0631\u0636 5432)<\/li>\n<li aria-level=\"1\">\u06af\u0648\u0627\u0647\u06cc SSL (\u0627\u06af\u0631 \u0627\u0633\u062a\u0642\u0631\u0627\u0631 SSL \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u062f)<\/li>\n<\/ol>\n<h3 style=\"text-align: justify;\"><span style=\"color: #0000ff;\"><b>\u06f2. \u0686\u06af\u0648\u0646\u0647 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u0645 \u0628\u0647 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 PostgreSQL \u062f\u0631 \u0627\u0648\u0628\u0648\u0646\u062a\u0648 \u062f\u0633\u062a\u0631\u0633\u06cc \u067e\u06cc\u062f\u0627 \u06a9\u0646\u06cc\u0645\u061f<\/b><\/span><\/h3>\n<p style=\"text-align: justify;\">\u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0646\u0627\u0645 \u06a9\u0627\u0631\u0628\u0631\u06cc postgres \u0648 \u0631\u0645\u0632\u0639\u0628\u0648\u0631 \u0627\u0631\u0627\u0626\u0647\u200c\u0634\u062f\u0647\u060c \u0628\u0647 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u062f\u0631 localhost:5432 \u0645\u062a\u0635\u0644 \u0634\u0648\u06cc\u062f. \u0627\u06a9\u0646\u0648\u0646 \u0631\u0648\u06cc PostgreSQL 9.4 \u062f\u0631 \u0632\u06cc\u0631 \u00ab\u06af\u0631\u0648\u0647\u200c\u0647\u0627\u06cc \u0633\u0631\u0648\u0631\u00bb \u062f\u0648 \u0628\u0627\u0631 \u06a9\u0644\u06cc\u06a9 \u06a9\u0646\u06cc\u062f. \u062d\u0627\u0644\u0627 pgAdmin \u0627\u0632 \u0634\u0645\u0627 \u0631\u0645\u0632\u0639\u0628\u0648\u0631 \u0645\u06cc\u200c\u062e\u0648\u0627\u0647\u062f. \u0634\u0645\u0627 \u0628\u0627\u06cc\u062f \u0631\u0645\u0632\u0639\u0628\u0648\u0631 \u06a9\u0627\u0631\u0628\u0631 postgres \u0631\u0627 \u0628\u0631\u0627\u06cc \u0627\u062d\u0631\u0627\u0632 \u0647\u0648\u06cc\u062a \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f.<\/p>\n<p><script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [{\n    \"@type\": \"Question\",\n    \"name\": \"\u0686\u06af\u0648\u0646\u0647 \u0628\u0627 Node.js \u0628\u0647 PostgreSQL \u0645\u062a\u0635\u0644 \u0634\u0648\u06cc\u0645\u061f\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"\u0646\u062d\u0648\u0647 \u0627\u062a\u0635\u0627\u0644 PostgreSQL \u0628\u0647 \u062f\u0631\u0627\u06cc\u0648\u0631 Node.js \u0628\u0647\u200c\u0635\u0648\u0631\u062a \u0632\u06cc\u0631 \u0627\u0633\u062a:<\/p>\n<p>\u067e\u0633\u0648\u0646\u062f PostgreSQL \u0631\u0627 \u0628\u0631\u0627\u06cc Node.js \u0648 \u0646\u06cc\u0632 npm \u0631\u0627 \u0646\u0635\u0628 \u06a9\u0646\u06cc\u062f.\n\u0627\u0637\u0644\u0627\u0639\u0627\u062a PostgreSQL \u0631\u0627 \u062f\u0631 \u0635\u0641\u062d\u0647 \u062c\u0632\u0626\u06cc\u0627\u062a \u0622\u0646 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f\u061b \u0627\u0632\u062c\u0645\u0644\u0647:\n\u0646\u0627\u0645 \u06a9\u0627\u0631\u0628\u0631\u06cc\n\u06a9\u0644\u0645\u0647 \u0639\u0628\u0648\u0631\n\u0646\u0627\u0645 \u0647\u0627\u0633\u062a\n\u067e\u0648\u0631\u062a (\u067e\u06cc\u0634\u200c\u0641\u0631\u0636 5432)\n\u06af\u0648\u0627\u0647\u06cc SSL (\u0627\u06af\u0631 \u0627\u0633\u062a\u0642\u0631\u0627\u0631 SSL \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u062f)\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"\u0686\u06af\u0648\u0646\u0647 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u0645 \u0628\u0647 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 PostgreSQL \u062f\u0631 \u0627\u0648\u0628\u0648\u0646\u062a\u0648 \u062f\u0633\u062a\u0631\u0633\u06cc \u067e\u06cc\u062f\u0627 \u06a9\u0646\u06cc\u0645\u061f\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"\u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0646\u0627\u0645 \u06a9\u0627\u0631\u0628\u0631\u06cc postgres \u0648 \u0631\u0645\u0632\u0639\u0628\u0648\u0631 \u0627\u0631\u0627\u0626\u0647\u200c\u0634\u062f\u0647\u060c \u0628\u0647 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u062f\u0631 localhost:5432 \u0645\u062a\u0635\u0644 \u0634\u0648\u06cc\u062f. \u0627\u06a9\u0646\u0648\u0646 \u0631\u0648\u06cc PostgreSQL 9.4 \u062f\u0631 \u0632\u06cc\u0631 \u00ab\u06af\u0631\u0648\u0647\u200c\u0647\u0627\u06cc \u0633\u0631\u0648\u0631\u00bb \u062f\u0648 \u0628\u0627\u0631 \u06a9\u0644\u06cc\u06a9 \u06a9\u0646\u06cc\u062f. \u062d\u0627\u0644\u0627 pgAdmin \u0627\u0632 \u0634\u0645\u0627 \u0631\u0645\u0632\u0639\u0628\u0648\u0631 \u0645\u06cc\u200c\u062e\u0648\u0627\u0647\u062f. \u0634\u0645\u0627 \u0628\u0627\u06cc\u062f \u0631\u0645\u0632\u0639\u0628\u0648\u0631 \u06a9\u0627\u0631\u0628\u0631 postgres \u0631\u0627 \u0628\u0631\u0627\u06cc \u0627\u062d\u0631\u0627\u0632 \u0647\u0648\u06cc\u062a \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f.\"\n    }\n  }]\n}\n<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u062f\u0631 \u0627\u06cc\u0646 \u0645\u0642\u0627\u0644\u0647 \u0645\u0631\u0627\u062d\u0644 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 PostgreSQL \u0631\u0627 \u062f\u0631 \u0627\u0648\u0628\u0648\u0646\u062a\u0648 20.04 \u0628\u06cc\u0627\u0646 \u06a9\u0631\u062f\u0647\u200c\u0627\u06cc\u0645. \u0627\u06cc\u0646 \u0645\u0642\u0627\u0644\u0647 \u0634\u0627\u0645\u0644 \u0645\u0631\u0627\u062d\u0644 \u0628\u0639\u062f \u0627\u0632 \u0646\u0635\u0628 \u062f\u06cc\u062a\u0627\u0628\u06cc\u0633 \u0627\u0633\u062a. \u0628\u0627 \u0645\u0627 \u0647\u0645\u0631\u0627\u0647 \u0628\u0627\u0634\u06cc\u062f.<\/p>\n","protected":false},"author":68,"featured_media":35208,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[294],"tags":[],"class_list":["post-27561","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ubuntu"],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/parspack.com\/blog\/wp-json\/wp\/v2\/posts\/27561","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/parspack.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/parspack.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/parspack.com\/blog\/wp-json\/wp\/v2\/users\/68"}],"replies":[{"embeddable":true,"href":"https:\/\/parspack.com\/blog\/wp-json\/wp\/v2\/comments?post=27561"}],"version-history":[{"count":4,"href":"https:\/\/parspack.com\/blog\/wp-json\/wp\/v2\/posts\/27561\/revisions"}],"predecessor-version":[{"id":49964,"href":"https:\/\/parspack.com\/blog\/wp-json\/wp\/v2\/posts\/27561\/revisions\/49964"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/parspack.com\/blog\/wp-json\/wp\/v2\/media\/35208"}],"wp:attachment":[{"href":"https:\/\/parspack.com\/blog\/wp-json\/wp\/v2\/media?parent=27561"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/parspack.com\/blog\/wp-json\/wp\/v2\/categories?post=27561"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/parspack.com\/blog\/wp-json\/wp\/v2\/tags?post=27561"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}