{"id":67378,"date":"2024-06-23T10:07:25","date_gmt":"2024-06-23T06:37:25","guid":{"rendered":"https:\/\/nabfollower.com\/blog\/exploring-crud-what-it-is-and-how-it-works-4nnk\/"},"modified":"2024-06-23T10:07:25","modified_gmt":"2024-06-23T06:37:25","slug":"exploring-crud-what-it-is-and-how-it-works-4nnk","status":"publish","type":"post","link":"https:\/\/nabfollower.com\/blog\/exploring-crud-what-it-is-and-how-it-works-4nnk\/","title":{"rendered":"\u06a9\u0627\u0648\u0634 CRUD: \u0686\u06cc\u0633\u062a \u0648 \u0686\u06af\u0648\u0646\u0647 \u06a9\u0627\u0631 \u0645\u06cc \u06a9\u0646\u062f"},"content":{"rendered":"<p>Summarize this content to 400 words in Persian Lang <\/p>\n<p>\u062f\u0631 \u062d\u0648\u0632\u0647 \u0641\u0646\u0627\u0648\u0631\u06cc\u060c \u0628\u0647 \u0648\u06cc\u0698\u0647 \u062f\u0631 \u062a\u0648\u0633\u0639\u0647 \u0646\u0631\u0645 \u0627\u0641\u0632\u0627\u0631 \u0648 \u0645\u062f\u06cc\u0631\u06cc\u062a \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647\u060c \u0627\u0635\u0637\u0644\u0627\u062d &#8220;CRUD&#8221; \u0627\u0633\u0627\u0633\u06cc \u0627\u0633\u062a.  \u0645\u062e\u0641\u0641 \u0622\u0646 \u0627\u0633\u062a \u0627\u06cc\u062c\u0627\u062f\u060c \u062e\u0648\u0627\u0646\u062f\u0646\u060c \u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc\u060c \u0648 \u062d\u0630\u0641.  \u0627\u06cc\u0646 \u0686\u0647\u0627\u0631 \u0639\u0645\u0644\u06cc\u0627\u062a \u0627\u0633\u0627\u0633\u06cc \u0628\u0631\u0627\u06cc \u062a\u0639\u0627\u0645\u0644 \u0628\u0627 \u067e\u0627\u06cc\u06af\u0627\u0647 \u0647\u0627\u06cc \u062f\u0627\u062f\u0647 \u0636\u0631\u0648\u0631\u06cc \u0647\u0633\u062a\u0646\u062f \u0648 \u062f\u0631 \u0647\u0645\u0647 \u062c\u0627 \u062f\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627 \u0648 \u0633\u06cc\u0633\u062a\u0645 \u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641 \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u0646\u062f.  \u062f\u0631 \u0627\u06cc\u0646 \u0645\u0642\u0627\u0644\u0647\u060c \u0645\u0639\u0646\u0627\u06cc CRUD\u060c \u0627\u0647\u0645\u06cc\u062a \u0622\u0646 \u0648 \u0646\u062d\u0648\u0647 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0622\u0646 \u062f\u0631 \u067e\u0644\u062a\u0641\u0631\u0645\u200c\u0647\u0627 \u0648 \u0641\u0646\u0627\u0648\u0631\u06cc\u200c\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641 \u0631\u0627 \u0628\u0631\u0631\u0633\u06cc \u0645\u06cc\u200c\u06a9\u0646\u06cc\u0645.<\/p>\n<p>  CRUD \u0686\u06cc\u0633\u062a\u061f<\/p>\n<p>CRUD \u0645\u062e\u0641\u0641 \u0686\u0647\u0627\u0631 \u0639\u0645\u0644\u06cc\u0627\u062a \u0627\u0635\u0644\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0630\u062e\u06cc\u0631\u0647 \u0633\u0627\u0632\u06cc \u067e\u0627\u06cc\u062f\u0627\u0631 \u0627\u0633\u062a.  \u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0628\u0631\u0627\u06cc \u0639\u0645\u0644\u06a9\u0631\u062f \u0647\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc \u0645\u0628\u062a\u0646\u06cc \u0628\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0636\u0631\u0648\u0631\u06cc \u0627\u0633\u062a.  \u0628\u06cc\u0627\u06cc\u06cc\u062f \u0647\u0631 \u062c\u0632\u0621 \u0631\u0627 \u062a\u062c\u0632\u06cc\u0647 \u06a9\u0646\u06cc\u0645:<\/p>\n<p>\u0627\u064a\u062c\u0627\u062f \u0643\u0631\u062f\u0646: \u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0634\u0627\u0645\u0644 \u0627\u0641\u0632\u0648\u062f\u0646 \u0631\u06a9\u0648\u0631\u062f\u0647\u0627 \u06cc\u0627 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u062c\u062f\u06cc\u062f \u0628\u0647 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0627\u0633\u062a.  \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c \u0632\u0645\u0627\u0646\u06cc \u06a9\u0647 \u06a9\u0627\u0631\u0628\u0631 \u062f\u0631 \u06cc\u06a9 \u0648\u0628 \u0633\u0627\u06cc\u062a \u062b\u0628\u062a \u0646\u0627\u0645 \u0645\u06cc \u06a9\u0646\u062f\u060c \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0627\u0648 \u0627\u06cc\u062c\u0627\u062f \u0648 \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0630\u062e\u06cc\u0631\u0647 \u0645\u06cc \u0634\u0648\u062f.<\/p>\n<p>\u062e\u0648\u0627\u0646\u062f\u0646: \u0647\u0645\u0686\u0646\u06cc\u0646 \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0634\u0646\u0627\u062e\u062a\u0647 \u0645\u06cc \u0634\u0648\u062f\u060c \u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0634\u0627\u0645\u0644 \u0648\u0627\u06a9\u0634\u06cc \u06cc\u0627 \u0645\u0634\u0627\u0647\u062f\u0647 \u0631\u06a9\u0648\u0631\u062f\u0647\u0627\u06cc \u0645\u0648\u062c\u0648\u062f \u0627\u0632 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0627\u0633\u062a.  \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c \u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u0648\u0627\u0631\u062f \u0633\u06cc\u0633\u062a\u0645 \u0645\u06cc \u0634\u0648\u062f \u0648 \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u067e\u0631\u0648\u0641\u0627\u06cc\u0644 \u0627\u0648 \u0646\u0645\u0627\u06cc\u0634 \u062f\u0627\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f\u060c \u0633\u06cc\u0633\u062a\u0645 \u0627\u06cc\u0646 \u062f\u0627\u062f\u0647 \u0647\u0627 \u0631\u0627 \u0627\u0632 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u06cc \u062e\u0648\u0627\u0646\u062f.<\/p>\n<p>\u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc: \u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0645\u0631\u0628\u0648\u0637 \u0628\u0647 \u0627\u0635\u0644\u0627\u062d \u0631\u06a9\u0648\u0631\u062f\u0647\u0627\u06cc \u0645\u0648\u062c\u0648\u062f \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0627\u0633\u062a.  \u06cc\u06a9 \u0645\u062b\u0627\u0644 \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u06a9\u0627\u0631\u0628\u0631\u06cc \u0628\u0627\u0634\u062f \u06a9\u0647 \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0646\u0645\u0627\u06cc\u0647 \u062e\u0648\u062f \u0631\u0627 \u0628\u0647 \u0631\u0648\u0632 \u0645\u06cc \u06a9\u0646\u062f\u060c \u0645\u0627\u0646\u0646\u062f \u062a\u063a\u06cc\u06cc\u0631 \u0622\u062f\u0631\u0633 \u0627\u06cc\u0645\u06cc\u0644 \u062e\u0648\u062f.<\/p>\n<p>\u062d\u0630\u0641: \u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0634\u0627\u0645\u0644 \u062d\u0630\u0641 \u0631\u06a9\u0648\u0631\u062f\u0647\u0627 \u0627\u0632 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0627\u0633\u062a.  \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c \u0627\u06af\u0631 \u06a9\u0627\u0631\u0628\u0631 \u062a\u0635\u0645\u06cc\u0645 \u0628\u0647 \u062d\u0630\u0641 \u062d\u0633\u0627\u0628 \u062e\u0648\u062f \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u062f\u060c \u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0627\u0648 \u0631\u0627 \u0627\u0632 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u062d\u0630\u0641 \u0645\u06cc \u06a9\u0646\u062f.<\/p>\n<p>\u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0628\u0631\u0627\u06cc \u062d\u0641\u0638 \u06cc\u06a9\u067e\u0627\u0631\u0686\u06af\u06cc \u0648 \u0639\u0645\u0644\u06a9\u0631\u062f \u0647\u0631 \u0633\u06cc\u0633\u062a\u0645\u06cc \u06a9\u0647 \u0628\u0647 \u0630\u062e\u06cc\u0631\u0647 \u0633\u0627\u0632\u06cc \u0648 \u0645\u062f\u06cc\u0631\u06cc\u062a \u062f\u0627\u062f\u0647 \u0647\u0627 \u0645\u062a\u06a9\u06cc \u0627\u0633\u062a\u060c \u062d\u06cc\u0627\u062a\u06cc \u0647\u0633\u062a\u0646\u062f.<\/p>\n<p>  \u0627\u0647\u0645\u06cc\u062a CRUD<\/p>\n<p>\u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0633\u062a\u0648\u0646 \u0641\u0642\u0631\u0627\u062a \u0647\u0631 \u0633\u06cc\u0633\u062a\u0645 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0627\u0633\u062a.  \u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u062f\u0644\u06cc\u0644 \u0627\u0647\u0645\u06cc\u062a \u0622\u0646\u0647\u0627 \u0627\u0633\u062a:<\/p>\n<p>\u0645\u062f\u06cc\u0631\u06cc\u062a \u0627\u0637\u0644\u0627\u0639\u0627\u062a: \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0627\u0645\u06a9\u0627\u0646 \u0645\u062f\u06cc\u0631\u06cc\u062a \u06a9\u0627\u0631\u0622\u0645\u062f \u062f\u0627\u062f\u0647 \u0647\u0627 \u0631\u0627 \u0641\u0631\u0627\u0647\u0645 \u0645\u06cc \u06a9\u0646\u062f \u0648 \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u062d\u0627\u0635\u0644 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0645\u06cc \u062a\u0648\u0627\u0646\u0646\u062f \u0628\u0647 \u0631\u0627\u062d\u062a\u06cc \u0627\u06cc\u062c\u0627\u062f\u060c \u062f\u0633\u062a\u0631\u0633\u06cc\u060c \u0627\u0635\u0644\u0627\u062d \u0648 \u062d\u0630\u0641 \u0634\u0648\u0646\u062f.<\/p>\n<p>\u062a\u0639\u0627\u0645\u0644 \u06a9\u0627\u0631\u0628\u0631: \u0628\u06cc\u0634\u062a\u0631 \u0631\u0627\u0628\u0637 \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u06cc \u062d\u0648\u0644 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0637\u0631\u0627\u062d\u06cc \u0634\u062f\u0647 \u0627\u0646\u062f.  \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 \u0648\u0628\u0644\u0627\u06af \u0628\u0647 \u06a9\u0627\u0631\u0628\u0631\u0627\u0646 \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc \u062f\u0647\u062f \u062a\u0627 \u067e\u0633\u062a \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u0646\u062f\u060c \u067e\u0633\u062a \u0647\u0627 \u0631\u0627 \u0628\u062e\u0648\u0627\u0646\u0646\u062f\u060c \u067e\u0633\u062a \u0647\u0627 \u0631\u0627 \u0628\u0647 \u0631\u0648\u0632 \u06a9\u0646\u0646\u062f \u0648 \u067e\u0633\u062a \u0647\u0627 \u0631\u0627 \u062d\u0630\u0641 \u06a9\u0646\u0646\u062f.<\/p>\n<p>\u06cc\u06a9\u067e\u0627\u0631\u0686\u06af\u06cc \u062f\u0627\u062f\u0647: \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD\u060c \u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0645\u06cc \u062a\u0648\u0627\u0646\u0646\u062f \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u062d\u0627\u0635\u0644 \u06a9\u0646\u0646\u062f \u06a9\u0647 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u062b\u0627\u0628\u062a \u0648 \u062f\u0642\u06cc\u0642 \u0628\u0627\u0642\u06cc \u0645\u06cc \u0645\u0627\u0646\u0646\u062f.  \u0627\u062c\u0631\u0627\u06cc \u0635\u062d\u06cc\u062d \u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0628\u0647 \u062c\u0644\u0648\u06af\u06cc\u0631\u06cc \u0627\u0632 \u062e\u0631\u0627\u0628\u06cc \u062f\u0627\u062f\u0647 \u0647\u0627 \u06a9\u0645\u06a9 \u0645\u06cc \u06a9\u0646\u062f \u0648 \u062a\u0636\u0645\u06cc\u0646 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u06a9\u0627\u0631\u0628\u0631\u0627\u0646 \u0645\u06cc \u062a\u0648\u0627\u0646\u0646\u062f \u0645\u0637\u0627\u0628\u0642 \u0627\u0646\u062a\u0638\u0627\u0631 \u0628\u0627 \u0628\u0631\u0646\u0627\u0645\u0647 \u062a\u0639\u0627\u0645\u0644 \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u0646\u062f.<\/p>\n<p>\u0645\u0642\u06cc\u0627\u0633 \u067e\u0630\u06cc\u0631\u06cc \u0648 \u0642\u0627\u0628\u0644\u06cc\u062a \u0646\u06af\u0647\u062f\u0627\u0631\u06cc: \u0627\u062c\u0631\u0627\u06cc \u0635\u062d\u06cc\u062d \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0633\u06cc\u0633\u062a\u0645 \u0631\u0627 \u0645\u0642\u06cc\u0627\u0633 \u067e\u0630\u06cc\u0631 \u0648 \u0646\u06af\u0647\u062f\u0627\u0631\u06cc \u0622\u0633\u0627\u0646 \u062a\u0631 \u0645\u06cc \u06a9\u0646\u062f.  \u0628\u0627 \u0631\u0634\u062f \u0628\u0631\u0646\u0627\u0645\u0647\u060c \u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0645\u06cc \u062a\u0648\u0627\u0646\u0646\u062f \u062d\u062c\u0645 \u0641\u0632\u0627\u06cc\u0646\u062f\u0647 \u062f\u0627\u062f\u0647 \u0647\u0627 \u0631\u0627 \u0628\u062f\u0648\u0646 \u0628\u0647 \u062e\u0637\u0631 \u0627\u0646\u062f\u0627\u062e\u062a\u0646 \u0639\u0645\u0644\u06a9\u0631\u062f \u06cc\u0627 \u06cc\u06a9\u067e\u0627\u0631\u0686\u06af\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u06a9\u0646\u0646\u062f.<\/p>\n<p>  CRUD \u062f\u0631 \u062a\u0648\u0633\u0639\u0647 \u0648\u0628<\/p>\n<p>\u062f\u0631 \u062a\u0648\u0633\u0639\u0647 \u0648\u0628\u060c \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0645\u0639\u0645\u0648\u0644\u0627\u064b \u0628\u0627 RESTful API\u0647\u0627 \u0648 \u062e\u062f\u0645\u0627\u062a \u0648\u0628 \u0645\u0631\u062a\u0628\u0637 \u0627\u0633\u062a.  \u0628\u06cc\u0627\u06cc\u06cc\u062f \u0628\u0631\u0631\u0633\u06cc \u06a9\u0646\u06cc\u0645 \u06a9\u0647 \u0686\u06af\u0648\u0646\u0647 CRUD \u062f\u0631 \u0627\u06cc\u0646 \u0632\u0645\u06cc\u0646\u0647 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0645\u06cc \u0634\u0648\u062f:<\/p>\n<p>  API \u0647\u0627\u06cc RESTful<\/p>\n<p>REST (Representational State Transfer) \u06cc\u06a9 \u0633\u0628\u06a9 \u0645\u0639\u0645\u0627\u0631\u06cc \u0627\u0633\u062a \u06a9\u0647 \u0627\u0632 \u0631\u0648\u0634 \u0647\u0627\u06cc \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f HTTP \u0628\u0631\u0627\u06cc \u0627\u0646\u062c\u0627\u0645 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f.  \u0647\u0631 \u0631\u0648\u0634 HTTP \u0645\u0631\u0628\u0648\u0637 \u0628\u0647 \u06cc\u06a9 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0627\u0633\u062a:<\/p>\n<p>\u067e\u0633\u062a: \u0628\u0631\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u0645\u0646\u0628\u0639 \u062c\u062f\u06cc\u062f \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f.  \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c \u0627\u0631\u0633\u0627\u0644 \u06cc\u06a9 \u062f\u0631\u062e\u0648\u0627\u0633\u062a POST \u0628\u0647 \/users \u0628\u0627 \u0645\u0634\u062e\u0635\u0627\u062a \u06a9\u0627\u0631\u0628\u0631 \u062f\u0631 \u0628\u062f\u0646\u060c \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u062c\u062f\u06cc\u062f \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc \u06a9\u0646\u062f.<\/p>\n<p>\u06af\u0631\u0641\u062a\u0646: \u0628\u0631\u0627\u06cc \u062e\u0648\u0627\u0646\u062f\u0646 \u06cc\u0627 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u06cc\u06a9 \u0645\u0646\u0628\u0639 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f.  \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c \u0627\u0631\u0633\u0627\u0644 \u06cc\u06a9 \u062f\u0631\u062e\u0648\u0627\u0633\u062a GET \u0628\u0647 \/users\/1 \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u06a9\u0627\u0631\u0628\u0631 \u0628\u0627 \u0634\u0646\u0627\u0633\u0647 1 \u0631\u0627 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0645\u06cc \u06a9\u0646\u062f.<\/p>\n<p>\u0642\u0631\u0627\u0631 \u062f\u0627\u062f\u0646: \u0628\u0631\u0627\u06cc \u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc \u06cc\u06a9 \u0645\u0646\u0628\u0639 \u0645\u0648\u062c\u0648\u062f \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f.  \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c \u0627\u0631\u0633\u0627\u0644 \u06cc\u06a9 \u062f\u0631\u062e\u0648\u0627\u0633\u062a PUT \u0628\u0647 \/users\/1 \u0628\u0627 \u062c\u0632\u0626\u06cc\u0627\u062a \u06a9\u0627\u0631\u0628\u0631 \u0628\u0647 \u0631\u0648\u0632 \u0634\u062f\u0647 \u062f\u0631 \u0628\u062f\u0646\u060c \u06a9\u0627\u0631\u0628\u0631 \u0628\u0627 \u0634\u0646\u0627\u0633\u0647 1 \u0628\u0647 \u0631\u0648\u0632 \u0645\u06cc \u0634\u0648\u062f.<\/p>\n<p>\u062d\u0630\u0641: \u0628\u0631\u0627\u06cc \u062d\u0630\u0641 \u06cc\u06a9 \u0645\u0646\u0628\u0639 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f.  \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c \u0627\u0631\u0633\u0627\u0644 \u06cc\u06a9 \u062f\u0631\u062e\u0648\u0627\u0633\u062a DELETE \u0628\u0647 \/users\/1 \u06a9\u0627\u0631\u0628\u0631 \u0628\u0627 \u0634\u0646\u0627\u0633\u0647 1 \u0631\u0627 \u062d\u0630\u0641 \u0645\u06cc \u06a9\u0646\u062f.<\/p>\n<p>  \u0645\u062b\u0627\u0644 \u0628\u0627 Node.js \u0648 Express<\/p>\n<p>\u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u06cc\u06a9 \u0645\u062b\u0627\u0644 \u0633\u0627\u062f\u0647 \u0627\u0632 \u0646\u062d\u0648\u0647 \u0627\u062c\u0631\u0627\u06cc \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u062f\u0631 \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 Node.js \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0686\u0627\u0631\u0686\u0648\u0628 Express \u0622\u0648\u0631\u062f\u0647 \u0634\u062f\u0647 \u0627\u0633\u062a:<\/p>\n<p>const express = require(&#8216;express&#8217;);<br \/>\nconst app = express();<br \/>\napp.use(express.json());<\/p>\n<p>let users = [];<\/p>\n<p>\/\/ Create<br \/>\napp.post(&#8216;\/users&#8217;, (req, res) =&gt; {<br \/>\n  const user = req.body;<br \/>\n  users.push(user);<br \/>\n  res.status(201).send(&#8216;User created&#8217;);<br \/>\n});<\/p>\n<p>\/\/ Read<br \/>\napp.get(&#8216;\/users&#8217;, (req, res) =&gt; {<br \/>\n  res.json(users);<br \/>\n});<\/p>\n<p>\/\/ Update<br \/>\napp.put(&#8216;\/users\/:id&#8217;, (req, res) =&gt; {<br \/>\n  const id = parseInt(req.params.id);<br \/>\n  const updatedUser = req.body;<br \/>\n  users = users.map(user =&gt; user.id === id ? updatedUser : user);<br \/>\n  res.send(&#8216;User updated&#8217;);<br \/>\n});<\/p>\n<p>\/\/ Delete<br \/>\napp.delete(&#8216;\/users\/:id&#8217;, (req, res) =&gt; {<br \/>\n  const id = parseInt(req.params.id);<br \/>\n  users = users.filter(user =&gt; user.id !== id);<br \/>\n  res.send(&#8216;User deleted&#8217;);<br \/>\n});<\/p>\n<p>app.listen(3000, () =&gt; console.log(&#8216;Server running on port 3000&#8217;));<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u062f\u0631 \u0627\u06cc\u0646 \u0645\u062b\u0627\u0644\u060c \u0645\u0627 \u0645\u0633\u06cc\u0631\u0647\u0627\u06cc\u06cc \u0631\u0627 \u0628\u0631\u0627\u06cc \u0647\u0631 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u062a\u0639\u0631\u06cc\u0641 \u0645\u06cc \u06a9\u0646\u06cc\u0645 \u0648 \u0645\u0646\u0637\u0642 \u0645\u0631\u0628\u0648\u0637\u0647 \u0631\u0627 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0645\u06cc \u06a9\u0646\u06cc\u0645.<\/p>\n<p>  CRUD \u062f\u0631 \u0645\u062f\u06cc\u0631\u06cc\u062a \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647<\/p>\n<p>\u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0645\u062d\u062f\u0648\u062f \u0628\u0647 \u062a\u0648\u0633\u0639\u0647 \u0648\u0628 \u0646\u06cc\u0633\u062a.  \u0622\u0646\u0647\u0627 \u0647\u0645\u0686\u0646\u06cc\u0646 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0627\u0633\u0627\u0633\u06cc \u0647\u0633\u062a\u0646\u062f.  \u0627\u06a9\u062b\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u0647\u0627\u06cc \u062f\u0627\u062f\u0647 \u0631\u0627\u0628\u0637\u0647 \u0627\u06cc \u0627\u0632 SQL (\u0632\u0628\u0627\u0646 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u0633\u0627\u062e\u062a\u0627\u0631\u06cc\u0627\u0641\u062a\u0647) \u0628\u0631\u0627\u06cc \u0627\u0646\u062c\u0627\u0645 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u0646\u062f.  \u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u0646\u062d\u0648\u0647 \u062a\u0631\u062c\u0645\u0647 \u0647\u0631 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0628\u0647 SQL \u0622\u0645\u062f\u0647 \u0627\u0633\u062a:<\/p>\n<p>\u0627\u064a\u062c\u0627\u062f \u0643\u0631\u062f\u0646: INSERT INTO users (name, email) VALUES (&#8216;John Doe&#8217;, &#8216;john@example.com&#8217;);<\/p>\n<p>\u062e\u0648\u0627\u0646\u062f\u0646: SELECT * FROM users WHERE id = 1;<\/p>\n<p>\u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc: UPDATE users SET email=&#8221;john.new@example.com&#8221; WHERE id = 1;<\/p>\n<p>\u062d\u0630\u0641: DELETE FROM users WHERE id = 1;<\/p>\n<p>  \u0645\u062b\u0627\u0644 \u0628\u0627 MySQL<\/p>\n<p>\u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u0646\u062d\u0648\u0647 \u0627\u062c\u0631\u0627\u06cc \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 MySQL \u0622\u0648\u0631\u062f\u0647 \u0634\u062f\u0647 \u0627\u0633\u062a:<\/p>\n<p>\u0627\u064a\u062c\u0627\u062f \u0643\u0631\u062f\u0646:<\/p>\n<p>INSERT INTO users (name, email) VALUES (&#8216;John Doe&#8217;, &#8216;john@example.com&#8217;);<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u062e\u0648\u0627\u0646\u062f\u0646:<\/p>\n<p>SELECT * FROM users WHERE id = 1;<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc:<\/p>\n<p>UPDATE users SET email = &#8216;john.new@example.com&#8217; WHERE id = 1;<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u062d\u0630\u0641:<\/p>\n<p>DELETE FROM users WHERE id = 1;<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u067e\u0631\u0633 \u0648 \u062c\u0648\u0647\u0627\u06cc SQL \u0627\u062c\u0631\u0627 \u0645\u06cc \u0634\u0648\u0646\u062f \u0648 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u062f\u0627\u062f\u0647 \u0647\u0627 \u062f\u0631 \u06cc\u06a9 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0631\u0627\u0628\u0637\u0647 \u0627\u06cc \u0636\u0631\u0648\u0631\u06cc \u0647\u0633\u062a\u0646\u062f.<\/p>\n<p>  CRUD \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u0647\u0627\u06cc \u062f\u0627\u062f\u0647 NoSQL<\/p>\n<p>\u062f\u0631 \u062d\u0627\u0644\u06cc \u06a9\u0647 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u0647\u0627\u06cc \u062f\u0627\u062f\u0647 \u0631\u0627\u0628\u0637\u0647\u200c\u0627\u06cc \u0633\u0627\u062f\u0647 \u0647\u0633\u062a\u0646\u062f\u060c \u0627\u0645\u0627 \u0628\u0631\u0627\u06cc \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u0647\u0627\u06cc \u062f\u0627\u062f\u0647 NoSQL \u0646\u06cc\u0632 \u0642\u0627\u0628\u0644 \u0627\u062c\u0631\u0627 \u0647\u0633\u062a\u0646\u062f\u060c \u0627\u06af\u0631\u0686\u0647 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0645\u0645\u06a9\u0646 \u0627\u0633\u062a \u0628\u0647 \u062f\u0644\u06cc\u0644 \u0645\u0627\u0647\u06cc\u062a \u0628\u062f\u0648\u0646 \u0637\u0631\u062d\u200c\u0648\u0627\u0631\u0647 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u0647\u0627\u06cc \u062f\u0627\u062f\u0647 NoSQL \u0645\u062a\u0641\u0627\u0648\u062a \u0628\u0627\u0634\u062f.<\/p>\n<p>  \u0645\u062b\u0627\u0644 \u0628\u0627 MongoDB<\/p>\n<p>MongoDB \u06cc\u06a9 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u062d\u0628\u0648\u0628 NoSQL \u0627\u0633\u062a \u06a9\u0647 \u0627\u0632 \u06cc\u06a9 \u0645\u062f\u0644 \u0633\u0646\u062f \u06af\u0631\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f.  \u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u0646\u062d\u0648\u0647 \u0627\u062c\u0631\u0627\u06cc \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u062f\u0631 MongoDB \u0622\u0645\u062f\u0647 \u0627\u0633\u062a:<\/p>\n<p>\u0627\u064a\u062c\u0627\u062f \u0643\u0631\u062f\u0646:<\/p>\n<p>db.users.insertOne({ name: &#8220;John Doe&#8221;, email: &#8220;john@example.com&#8221; });<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u062e\u0648\u0627\u0646\u062f\u0646:<\/p>\n<p>db.users.findOne({ _id: ObjectId(&#8220;60c72b2f9b1d8f1d4c8b4567&#8221;) });<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc:<\/p>\n<p>db.users.updateOne({ _id: ObjectId(&#8220;60c72b2f9b1d8f1d4c8b4567&#8221;) }, { $set: { email: &#8220;john.new@example.com&#8221; } });<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u062d\u0630\u0641:<\/p>\n<p>db.users.deleteOne({ _id: ObjectId(&#8220;60c72b2f9b1d8f1d4c8b4567&#8243;) });<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0627\u0632 \u0632\u0628\u0627\u0646 \u067e\u0631\u0633 \u0648 \u062c\u0648 MongoDB \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0627\u0633\u0646\u0627\u062f \u062f\u0631 \u06cc\u06a9 \u0645\u062c\u0645\u0648\u0639\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f.<\/p>\n<p>  CRUD \u062f\u0631 \u062a\u0648\u0633\u0639\u0647 Frontend<\/p>\n<p>\u062f\u0631 \u062d\u0627\u0644\u06cc \u06a9\u0647 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0627\u063a\u0644\u0628 \u0628\u0627 \u062a\u0648\u0633\u0639\u0647 \u0628\u0627\u0637\u0646 \u0645\u0631\u062a\u0628\u0637 \u0627\u0633\u062a\u060c \u062f\u0631 \u062a\u0648\u0633\u0639\u0647 frontend \u0646\u06cc\u0632 \u0645\u0631\u062a\u0628\u0637 \u0627\u0633\u062a.  \u0686\u0627\u0631\u0686\u0648\u0628\u200c\u0647\u0627 \u0648 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647\u200c\u0647\u0627\u06cc \u0641\u0631\u0627\u0646\u062a\u200c\u0627\u0646\u062f \u0645\u062f\u0631\u0646 \u0645\u0627\u0646\u0646\u062f React\u060c Angular \u0648 Vue.js \u0627\u063a\u0644\u0628 \u0634\u0627\u0645\u0644 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0648\u0636\u0639\u06cc\u062a \u0628\u0631\u0646\u0627\u0645\u0647 \u0648 \u062a\u0639\u0627\u0645\u0644 \u0628\u0627 API\u0647\u0627 \u0645\u06cc\u200c\u0634\u0648\u0646\u062f.<\/p>\n<p>  \u0645\u062b\u0627\u0644 \u0628\u0627 React<\/p>\n<p>\u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u06cc\u06a9 \u0645\u062b\u0627\u0644 \u0633\u0627\u062f\u0647 \u0627\u0632 \u0646\u062d\u0648\u0647 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u062f\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 React \u0622\u0648\u0631\u062f\u0647 \u0634\u062f\u0647 \u0627\u0633\u062a:<\/p>\n<p>import React, { useState, useEffect } from &#8216;react&#8217;;<\/p>\n<p>const App = () =&gt; {<br \/>\n  const [users, setUsers] = useState([]);<br \/>\n  const [newUser, setNewUser] = useState(&#8221;);<\/p>\n<p>  useEffect(() =&gt; {<br \/>\n    \/\/ Read<br \/>\n    fetch(&#8216;\/api\/users&#8217;)<br \/>\n      .then(response =&gt; response.json())<br \/>\n      .then(data =&gt; setUsers(data));<br \/>\n  }, []);<\/p>\n<p>  const createUser = () =&gt; {<br \/>\n    \/\/ Create<br \/>\n    fetch(&#8216;\/api\/users&#8217;, {<br \/>\n      method: &#8216;POST&#8217;,<br \/>\n      headers: { &#8216;Content-Type&#8217;: &#8216;application\/json&#8217; },<br \/>\n      body: JSON.stringify({ name: newUser })<br \/>\n    })<br \/>\n    .then(() =&gt; setNewUser(&#8221;))<br \/>\n    .then(() =&gt; fetch(&#8216;\/api\/users&#8217;).then(response =&gt; response.json()).then(data =&gt; setUsers(data)));<br \/>\n  };<\/p>\n<p>  const updateUser = (id, newName) =&gt; {<br \/>\n    \/\/ Update<br \/>\n    fetch(`\/api\/users\/${id}`, {<br \/>\n      method: &#8216;PUT&#8217;,<br \/>\n      headers: { &#8216;Content-Type&#8217;: &#8216;application\/json&#8217; },<br \/>\n      body: JSON.stringify({ name: newName })<br \/>\n    })<br \/>\n    .then(() =&gt; fetch(&#8216;\/api\/users&#8217;).then(response =&gt; response.json()).then(data =&gt; setUsers(data)));<br \/>\n  };<\/p>\n<p>  const deleteUser = id =&gt; {<br \/>\n    \/\/ Delete<br \/>\n    fetch(`\/api\/users\/${id}`, { method: &#8216;DELETE&#8217; })<br \/>\n    .then(() =&gt; fetch(&#8216;\/api\/users&#8217;).then(response =&gt; response.json()).then(data =&gt; setUsers(data)));<br \/>\n  };<\/p>\n<p>  return (<br \/>\n    &lt;div&gt;<br \/>\n      &lt;h1&gt;Users&lt;\/h1&gt;<br \/>\n      &lt;ul&gt;<br \/>\n        {users.map(user =&gt; (<br \/>\n          &lt;li key={user.id}&gt;<br \/>\n            {user.name}<br \/>\n            &lt;button onClick={() =&gt; updateUser(user.id, prompt(&#8216;New name:&#8217;, user.name))}&gt;Update&lt;\/button&gt;<br \/>\n            &lt;button onClick={() =&gt; deleteUser(user.id)}&gt;Delete&lt;\/button&gt;<br \/>\n          &lt;\/li&gt;<br \/>\n        ))}<br \/>\n      &lt;\/ul&gt;<br \/>\n      &lt;input value={newUser} onChange={e =&gt; setNewUser(e.target.value)} \/&gt;<br \/>\n      &lt;button onClick={createUser}&gt;Add User&lt;\/button&gt;<br \/>\n    &lt;\/div&gt;<br \/>\n  );<br \/>\n};<\/p>\n<p>export default App;<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u062f\u0631 \u0627\u06cc\u0646 \u0645\u062b\u0627\u0644\u060c \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631 \u062f\u0631 \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 React \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc\u200c\u0634\u0648\u062f \u0648 \u0646\u0634\u0627\u0646 \u0645\u06cc\u200c\u062f\u0647\u062f \u06a9\u0647 \u0686\u06af\u0648\u0646\u0647 \u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u062f\u0631 \u0644\u0627\u06cc\u0647\u200c\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641 \u0627\u0633\u0627\u0633\u06cc \u0647\u0633\u062a\u0646\u062f.<\/p>\n<p>\u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc<\/p>\n<p>  CRUD \u062f\u0631 \u062a\u0648\u0633\u0639\u0647 \u0645\u0648\u0628\u0627\u06cc\u0644<\/p>\n<p>\u062a\u0648\u0633\u0639\u0647 \u0645\u0648\u0628\u0627\u06cc\u0644 \u0647\u0645\u0686\u0646\u06cc\u0646 \u0628\u0647 \u0634\u062f\u062a \u0628\u0647 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0645\u062a\u06a9\u06cc \u0627\u0633\u062a\u060c \u0686\u0647 \u062f\u0631 \u062d\u0627\u0644 \u062a\u0648\u0633\u0639\u0647 \u0628\u0631\u0627\u06cc Android\u060c iOS \u06cc\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0686\u0627\u0631\u0686\u0648\u0628\u200c\u0647\u0627\u06cc \u0686\u0646\u062f \u067e\u0644\u062a\u0641\u0631\u0645\u06cc \u0645\u0627\u0646\u0646\u062f Flutter \u06cc\u0627 React Native \u0628\u0627\u0634\u06cc\u062f.  \u0645\u062f\u06cc\u0631\u06cc\u062a \u062f\u0627\u062f\u0647 \u0647\u0627\u060c \u0647\u0645\u06af\u0627\u0645 \u0633\u0627\u0632\u06cc \u0628\u0627 \u0633\u0631\u0648\u0631\u0647\u0627\u06cc \u0631\u0627\u0647 \u062f\u0648\u0631 \u0648 \u0630\u062e\u06cc\u0631\u0647 \u0633\u0627\u0632\u06cc \u0645\u062d\u0644\u06cc \u0647\u0645\u06af\u06cc \u0628\u0647 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u0646\u062f.<\/p>\n<p>  \u0645\u062b\u0627\u0644 \u0628\u0627 \u0627\u0646\u062f\u0631\u0648\u06cc\u062f (\u062c\u0627\u0648\u0627)<\/p>\n<p>\u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u0646\u0645\u0648\u0646\u0647 \u0627\u06cc \u0627\u0632 \u0627\u062c\u0631\u0627\u06cc \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u062f\u0631 \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 \u0627\u0646\u062f\u0631\u0648\u06cc\u062f \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 SQLite \u0622\u0648\u0631\u062f\u0647 \u0634\u062f\u0647 \u0627\u0633\u062a:<\/p>\n<p>\u06a9\u0644\u0627\u0633 \u06a9\u0645\u06a9\u06cc \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647:<\/p>\n<p>public class DBHelper extends SQLiteOpenHelper {<\/p>\n<p>    private static final String DATABASE_NAME = &#8220;users.db&#8221;;<br \/>\n    private static final int DATABASE_VERSION = 1;<br \/>\n    private static final String TABLE_NAME = &#8220;users&#8221;;<br \/>\n    private static final String COLUMN_ID = &#8220;id&#8221;;<br \/>\n    private static final String COLUMN_NAME = &#8220;name&#8221;;<br \/>\n    private static final String COLUMN_EMAIL = &#8220;email&#8221;;<\/p>\n<p>    public DBHelper(Context context) {<br \/>\n        super(context, DATABASE_NAME, null, DATABASE_VERSION);<br \/>\n    }<\/p>\n<p>    @Override<br \/>\n    public void onCreate(SQLiteDatabase db) {<br \/>\n        String createTable = &#8220;CREATE TABLE &#8221; + TABLE_NAME + &#8221; (&#8221; +<br \/>\n                COLUMN_ID + &#8221; INTEGER PRIMARY KEY AUTOINCREMENT, &#8221; +<br \/>\n                COLUMN_NAME + &#8221; TEXT, &#8221; +<br \/>\n                COLUMN_EMAIL + &#8221; TEXT)&#8221;;<br \/>\n        db.execSQL(createTable);<br \/>\n    }<\/p>\n<p>    @Override<br \/>\n    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {<br \/>\n        db.execSQL(&#8220;DROP TABLE IF EXISTS &#8221; + TABLE_NAME);<br \/>\n        onCreate(db);<br \/>\n    }<\/p>\n<p>    \/\/ Create<br \/>\n    public boolean insertUser(String name, String email) {<br \/>\n        SQLiteDatabase db = this.getWritableDatabase();<br \/>\n        ContentValues contentValues = new ContentValues();<br \/>\n        contentValues.put(COLUMN_NAME, name);<br \/>\n        contentValues.put(COLUMN_EMAIL, email);<br \/>\n        long result = db.insert(TABLE_NAME, null, contentValues);<br \/>\n        return result != -1;<br \/>\n    }<\/p>\n<p>    \/\/ Read<br \/>\n    public Cursor getUser(int id) {<br \/>\n        SQLiteDatabase db = this.getReadableDatabase();<br \/>\n        return db.query(TABLE_NAME, null, COLUMN_ID + &#8220;=?&#8221;, new String[]{String.valueOf(id)}, null, null, null);<br \/>\n    }<\/p>\n<p>    \/\/ Update<br \/>\n    public boolean updateUser(int id, String name, String email) {<br \/>\n        SQLiteDatabase db = this.getWritableDatabase();<br \/>\n        ContentValues contentValues = new ContentValues();<br \/>\n        contentValues.put(COLUMN_NAME, name);<br \/>\n        contentValues.put(COLUMN_EMAIL, email);<br \/>\n        int result = db.update(TABLE_NAME, contentValues, COLUMN_ID + &#8220;=?&#8221;, new String[]{String.valueOf(id)});<br \/>\n        return result &gt; 0;<br \/>\n    }<\/p>\n<p>    \/\/ Delete<br \/>\n    public boolean deleteUser(int id) {<br \/>\n        SQLiteDatabase db = this.getWritableDatabase();<br \/>\n        int result = db.delete(TABLE_NAME, COLUMN_ID + &#8220;=?&#8221;, new String[]{String.valueOf(id)});<br \/>\n        return result &gt; 0;<br \/>\n    }<br \/>\n}<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 DBHelper \u062f\u0631 \u06cc\u06a9 \u0641\u0639\u0627\u0644\u06cc\u062a:<\/p>\n<p>public class MainActivity extends AppCompatActivity {<\/p>\n<p>    DBHelper dbHelper;<br \/>\n    EditText editName, editEmail;<br \/>\n    Button btnAdd, btnView, btnUpdate, btnDelete;<br \/>\n    TextView textView;<\/p>\n<p>    @Override<br \/>\n    protected void onCreate(Bundle savedInstanceState) {<br \/>\n        super.onCreate(savedInstanceState);<br \/>\n        setContentView(R.layout.activity_main);<\/p>\n<p>        dbHelper = new DBHelper(this);<br \/>\n        editName = findViewById(R.id.editName);<br \/>\n        editEmail = findViewById(R.id.editEmail);<br \/>\n        btnAdd = findViewById(R.id.btnAdd);<br \/>\n        btnView = findViewById(R.id.btnView);<br \/>\n        btnUpdate = findViewById(R.id.btnUpdate);<br \/>\n        btnDelete = findViewById(R.id.btnDelete);<br \/>\n        textView = findViewById(R.id.textView);<\/p>\n<p>        \/\/ Add User<br \/>\n        btnAdd.setOnClickListener(new View.OnClickListener() {<br \/>\n            @Override<br \/>\n            public void onClick(View view) {<br \/>\n                String name = editName.getText().toString();<br \/>\n                String email = editEmail.getText().toString();<br \/>\n                boolean inserted = dbHelper.insertUser(name, email);<br \/>\n                if (inserted) {<br \/>\n                    Toast.makeText(MainActivity.this, &#8220;User Added&#8221;, Toast.LENGTH_SHORT).show();<br \/>\n                } else {<br \/>\n                    Toast.makeText(MainActivity.this, &#8220;Insertion Failed&#8221;, Toast.LENGTH_SHORT).show();<br \/>\n                }<br \/>\n            }<br \/>\n        });<\/p>\n<p>        \/\/ View User<br \/>\n        btnView.setOnClickListener(new View.OnClickListener() {<br \/>\n            @Override<br \/>\n            public void onClick(View view) {<br \/>\n                int id = Integer.parseInt(editName.getText().toString()); \/\/ For simplicity, using name input for ID<br \/>\n                Cursor cursor = dbHelper.getUser(id);<br \/>\n                if (cursor.moveToFirst()) {<br \/>\n                    textView.setText(&#8220;ID: &#8221; + cursor.getInt(cursor.getColumnIndexOrThrow(&#8220;id&#8221;)) +<br \/>\n                            &#8220;\\nName: &#8221; + cursor.getString(cursor.getColumnIndexOrThrow(&#8220;name&#8221;)) +<br \/>\n                            &#8220;\\nEmail: &#8221; + cursor.getString(cursor.getColumnIndexOrThrow(&#8220;email&#8221;)));<br \/>\n                } else {<br \/>\n                    Toast.makeText(MainActivity.this, &#8220;User Not Found&#8221;, Toast.LENGTH_SHORT).show();<br \/>\n                }<br \/>\n            }<br \/>\n        });<\/p>\n<p>        \/\/ Update User<br \/>\n        btnUpdate.setOnClickListener(new View.OnClickListener() {<br \/>\n            @Override<br \/>\n            public void onClick(View view) {<br \/>\n                int id = Integer.parseInt(editName.getText().toString()); \/\/ For simplicity, using name input for ID<br \/>\n                String newName = editEmail.getText().toString();<br \/>\n                String newEmail = &#8220;newemail@example.com&#8221;; \/\/ Dummy new email for update<br \/>\n                boolean updated = dbHelper.updateUser(id, newName, newEmail);<br \/>\n                if (updated) {<br \/>\n                    Toast.makeText(MainActivity.this, &#8220;User Updated&#8221;, Toast.LENGTH_SHORT).show();<br \/>\n                } else {<br \/>\n                    Toast.makeText(MainActivity.this, &#8220;Update Failed&#8221;, Toast.LENGTH_SHORT).show();<br \/>\n                }<br \/>\n            }<br \/>\n        });<\/p>\n<p>        \/\/ Delete User<br \/>\n        btnDelete.setOnClickListener(new View.OnClickListener() {<br \/>\n            @Override<br \/>\n            public void onClick(View view) {<br \/>\n                int id = Integer.parseInt(editName.getText().toString()); \/\/ For simplicity, using name input for ID<br \/>\n                boolean deleted = dbHelper.deleteUser(id);<br \/>\n                if (deleted) {<br \/>\n                    Toast.makeText(MainActivity.this, &#8220;User Deleted&#8221;, Toast.LENGTH_SHORT).show();<br \/>\n                } else {<br \/>\n                    Toast.makeText(MainActivity.this, &#8220;Deletion Failed&#8221;, Toast.LENGTH_SHORT).show();<br \/>\n                }<br \/>\n            }<br \/>\n        });<br \/>\n    }<br \/>\n}<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>  \u0645\u062b\u0627\u0644 \u0628\u0627 \u0641\u0644\u0627\u062a\u0631<\/p>\n<p>\u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u0645\u062b\u0627\u0644\u06cc \u0627\u0632 \u0646\u062d\u0648\u0647 \u0627\u062c\u0631\u0627\u06cc \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u062f\u0631 \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 Flutter \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 sqflite \u0628\u0633\u062a\u0647 \u0628\u0631\u0627\u06cc SQLite:<\/p>\n<p>\u0631\u0627\u0647\u0646\u0645\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647:<\/p>\n<p>import &#8216;package:sqflite\/sqflite.dart&#8217;;<br \/>\nimport &#8216;package:path\/path.dart&#8217;;<\/p>\n<p>class DatabaseHelper {<br \/>\n  static final _databaseName = &#8220;users.db&#8221;;<br \/>\n  static final _databaseVersion = 1;<\/p>\n<p>  static final table = &#8216;users&#8217;;<\/p>\n<p>  static final columnId = &#8216;id&#8217;;<br \/>\n  static final columnName = &#8216;name&#8217;;<br \/>\n  static final columnEmail = &#8217;email&#8217;;<\/p>\n<p>  DatabaseHelper._privateConstructor();<br \/>\n  static final DatabaseHelper instance = DatabaseHelper._privateConstructor();<\/p>\n<p>  static Database? _database;<\/p>\n<p>  Future&lt;Database?&gt; get database async {<br \/>\n    if (_database != null) return _database;<br \/>\n    _database = await _initDatabase();<br \/>\n    return _database;<br \/>\n  }<\/p>\n<p>  _initDatabase() async {<br \/>\n    String path = join(await getDatabasesPath(), _databaseName);<br \/>\n    return await openDatabase(path,<br \/>\n        version: _databaseVersion, onCreate: _onCreate);<br \/>\n  }<\/p>\n<p>  Future _onCreate(Database db, int version) async {<br \/>\n    await db.execute(&#8221;&#8217;<br \/>\n          CREATE TABLE $table (<br \/>\n            $columnId INTEGER PRIMARY KEY AUTOINCREMENT,<br \/>\n            $columnName TEXT NOT NULL,<br \/>\n            $columnEmail TEXT NOT NULL<br \/>\n          )<br \/>\n          &#8221;&#8217;);<br \/>\n  }<\/p>\n<p>  \/\/ Create<br \/>\n  Future&lt;int&gt; insert(Map&lt;String, dynamic&gt; row) async {<br \/>\n    Database? db = await instance.database;<br \/>\n    return await db!.insert(table, row);<br \/>\n  }<\/p>\n<p>  \/\/ Read<br \/>\n  Future&lt;List&lt;Map&lt;String, dynamic&gt;&gt;&gt; queryAllRows() async {<br \/>\n    Database? db = await instance.database;<br \/>\n    return await db!.query(table);<br \/>\n  }<\/p>\n<p>  \/\/ Update<br \/>\n  Future&lt;int&gt; update(Map&lt;String, dynamic&gt; row) async {<br \/>\n    Database? db = await instance.database;<br \/>\n    int id = row[columnId];<br \/>\n    return await db!.update(table, row, where: &#8216;$columnId = ?&#8217;, whereArgs: [id]);<br \/>\n  }<\/p>\n<p>  \/\/ Delete<br \/>\n  Future&lt;int&gt; delete(int id) async {<br \/>\n    Database? db = await instance.database;<br \/>\n    return await db!.delete(table, where: &#8216;$columnId = ?&#8217;, whereArgs: [id]);<br \/>\n  }<br \/>\n}<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Database Helper \u062f\u0631 Flutter Widget:<\/p>\n<p>import &#8216;package:flutter\/material.dart&#8217;;<br \/>\nimport &#8216;database_helper.dart&#8217;;<\/p>\n<p>void main() =&gt; runApp(MyApp());<\/p>\n<p>class MyApp extends StatelessWidget {<br \/>\n  @override<br \/>\n  Widget build(BuildContext context) {<br \/>\n    return MaterialApp(<br \/>\n      home: UserPage(),<br \/>\n    );<br \/>\n  }<br \/>\n}<\/p>\n<p>class UserPage extends StatefulWidget {<br \/>\n  @override<br \/>\n  _UserPageState createState() =&gt; _UserPageState();<br \/>\n}<\/p>\n<p>class _UserPageState extends State&lt;UserPage&gt; {<br \/>\n  final dbHelper = DatabaseHelper.instance;<\/p>\n<p>  final nameController = TextEditingController();<br \/>\n  final emailController = TextEditingController();<\/p>\n<p>  void _insert() async {<br \/>\n    Map&lt;String, dynamic&gt; row = {<br \/>\n      DatabaseHelper.columnName: nameController.text,<br \/>\n      DatabaseHelper.columnEmail: emailController.text,<br \/>\n    };<br \/>\n    final id = await dbHelper.insert(row);<br \/>\n    print(&#8216;Inserted row id: $id&#8217;);<br \/>\n    _queryAll();<br \/>\n  }<\/p>\n<p>  void _queryAll() async {<br \/>\n    final allRows = await dbHelper.queryAllRows();<br \/>\n    print(&#8216;Query all rows:&#8217;);<br \/>\n    allRows.forEach(print);<\/p>\n<p> }<\/p>\n<p>  void _update() async {<br \/>\n    Map&lt;String, dynamic&gt; row = {<br \/>\n      DatabaseHelper.columnId: 1,<br \/>\n      DatabaseHelper.columnName: &#8216;New Name&#8217;,<br \/>\n      DatabaseHelper.columnEmail: &#8216;newemail@example.com&#8217;,<br \/>\n    };<br \/>\n    final rowsAffected = await dbHelper.update(row);<br \/>\n    print(&#8216;Updated $rowsAffected row(s)&#8217;);<br \/>\n    _queryAll();<br \/>\n  }<\/p>\n<p>  void _delete() async {<br \/>\n    final id = await dbHelper.delete(1);<br \/>\n    print(&#8216;Deleted $id row(s)&#8217;);<br \/>\n    _queryAll();<br \/>\n  }<\/p>\n<p>  @override<br \/>\n  Widget build(BuildContext context) {<br \/>\n    return Scaffold(<br \/>\n      appBar: AppBar(<br \/>\n        title: Text(&#8216;CRUD Operations&#8217;),<br \/>\n      ),<br \/>\n      body: Padding(<br \/>\n        padding: const EdgeInsets.all(16.0),<br \/>\n        child: Column(<br \/>\n          children: &lt;Widget&gt;[<br \/>\n            TextField(<br \/>\n              controller: nameController,<br \/>\n              decoration: InputDecoration(labelText: &#8216;Name&#8217;),<br \/>\n            ),<br \/>\n            TextField(<br \/>\n              controller: emailController,<br \/>\n              decoration: InputDecoration(labelText: &#8216;Email&#8217;),<br \/>\n            ),<br \/>\n            Row(<br \/>\n              children: &lt;Widget&gt;[<br \/>\n                ElevatedButton(<br \/>\n                  onPressed: _insert,<br \/>\n                  child: Text(&#8216;Insert&#8217;),<br \/>\n                ),<br \/>\n                SizedBox(width: 8),<br \/>\n                ElevatedButton(<br \/>\n                  onPressed: _update,<br \/>\n                  child: Text(&#8216;Update&#8217;),<br \/>\n                ),<br \/>\n                SizedBox(width: 8),<br \/>\n                ElevatedButton(<br \/>\n                  onPressed: _delete,<br \/>\n                  child: Text(&#8216;Delete&#8217;),<br \/>\n                ),<br \/>\n              ],<br \/>\n            ),<br \/>\n            ElevatedButton(<br \/>\n              onPressed: _queryAll,<br \/>\n              child: Text(&#8216;Query&#8217;),<br \/>\n            ),<br \/>\n          ],<br \/>\n        ),<br \/>\n      ),<br \/>\n    );<br \/>\n  }<br \/>\n}<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>  \u0646\u062a\u06cc\u062c\u0647<\/p>\n<p>\u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0628\u0631\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 \u0648 \u0645\u062f\u06cc\u0631\u06cc\u062a \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc \u062f\u0627\u062f\u0647 \u0645\u062d\u0648\u0631 \u0627\u0633\u0627\u0633\u06cc \u0627\u0633\u062a.  \u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0686\u0647 \u0628\u0631 \u0631\u0648\u06cc \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0647\u0627\u06cc \u0648\u0628\u060c \u062a\u0644\u0641\u0646 \u0647\u0645\u0631\u0627\u0647 \u06cc\u0627 \u062f\u0633\u06a9\u062a\u0627\u067e \u06a9\u0627\u0631 \u06a9\u0646\u0646\u062f\u060c \u0633\u062a\u0648\u0646 \u0641\u0642\u0631\u0627\u062a \u062a\u0639\u0627\u0645\u0644 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0631\u0627 \u062a\u0634\u06a9\u06cc\u0644 \u0645\u06cc\u200c\u062f\u0647\u0646\u062f \u0648 \u062a\u0636\u0645\u06cc\u0646 \u0645\u06cc\u200c\u06a9\u0646\u0646\u062f \u06a9\u0647 \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0647\u0627 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u0646\u062f \u0628\u0647 \u0637\u0648\u0631 \u0645\u0648\u062b\u0631 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0631\u0627 \u0645\u062f\u06cc\u0631\u06cc\u062a \u0648 \u062f\u0633\u062a\u06a9\u0627\u0631\u06cc \u06a9\u0646\u0646\u062f.  \u0627\u0632 API \u0647\u0627\u06cc RESTful \u062f\u0631 \u062a\u0648\u0633\u0639\u0647 \u0648\u0628 \u06af\u0631\u0641\u062a\u0647 \u062a\u0627 SQLite \u062f\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u062a\u0644\u0641\u0646 \u0647\u0645\u0631\u0627\u0647\u060c \u062f\u0631\u06a9 \u0648 \u0627\u062c\u0631\u0627\u06cc \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0628\u0631\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0628\u0631\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f \u0631\u0627\u0647 \u062d\u0644 \u0647\u0627\u06cc \u0646\u0631\u0645 \u0627\u0641\u0632\u0627\u0631\u06cc \u0642\u0648\u06cc\u060c \u0645\u0642\u06cc\u0627\u0633 \u067e\u0630\u06cc\u0631 \u0648 \u0642\u0627\u0628\u0644 \u0646\u06af\u0647\u062f\u0627\u0631\u06cc \u0636\u0631\u0648\u0631\u06cc \u0627\u0633\u062a.<\/p>\n<p>\u0628\u0627 \u062a\u0633\u0644\u0637 \u0628\u0631 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD\u060c \u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0645\u06cc \u062a\u0648\u0627\u0646\u0646\u062f \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u062d\u0627\u0635\u0644 \u06a9\u0646\u0646\u062f \u06a9\u0647 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc \u0622\u0646\u0647\u0627 \u0642\u0627\u062f\u0631 \u0628\u0647 \u0645\u062f\u06cc\u0631\u06cc\u062a \u06a9\u0627\u0631\u0622\u0645\u062f \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u060c \u062d\u0641\u0638 \u06cc\u06a9\u067e\u0627\u0631\u0686\u06af\u06cc \u062f\u0627\u062f\u0647 \u0647\u0627 \u0648 \u0627\u0631\u0627\u0626\u0647 \u06cc\u06a9 \u062a\u062c\u0631\u0628\u0647 \u06a9\u0627\u0631\u0628\u0631\u06cc \u06cc\u06a9\u067e\u0627\u0631\u0686\u0647 \u0647\u0633\u062a\u0646\u062f.  \u0647\u0645\u0627\u0646\u0637\u0648\u0631 \u06a9\u0647 \u062a\u06a9\u0646\u0648\u0644\u0648\u0698\u06cc \u0628\u0647 \u062a\u06a9\u0627\u0645\u0644 \u062e\u0648\u062f \u0627\u062f\u0627\u0645\u0647 \u0645\u06cc \u062f\u0647\u062f\u060c \u0627\u0635\u0648\u0644 CRUD \u0633\u0646\u06af \u0628\u0646\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u062f\u0627\u062f\u0647 \u062f\u0631 \u062a\u0648\u0633\u0639\u0647 \u0646\u0631\u0645 \u0627\u0641\u0632\u0627\u0631 \u0628\u0627\u0642\u06cc \u062e\u0648\u0627\u0647\u062f \u0645\u0627\u0646\u062f.<\/p>\n<p>  \ud83d\udcb0 \u0634\u0645\u0627 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0628\u0627 \u0627\u0647\u062f\u0627 \u0628\u0647 \u0645\u0646 \u06a9\u0645\u06a9 \u06a9\u0646\u06cc\u062f<\/p>\n<div data-article-id=\"1897527\" id=\"article-body\">\n<p><img alt=\"BuyMeACoffee\" loading=\"lazy\" width=\"162\" height=\"28\"\/><\/p>\n<p>\u062f\u0631 \u062d\u0648\u0632\u0647 \u0641\u0646\u0627\u0648\u0631\u06cc\u060c \u0628\u0647 \u0648\u06cc\u0698\u0647 \u062f\u0631 \u062a\u0648\u0633\u0639\u0647 \u0646\u0631\u0645 \u0627\u0641\u0632\u0627\u0631 \u0648 \u0645\u062f\u06cc\u0631\u06cc\u062a \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647\u060c \u0627\u0635\u0637\u0644\u0627\u062d &#8220;CRUD&#8221; \u0627\u0633\u0627\u0633\u06cc \u0627\u0633\u062a.  \u0645\u062e\u0641\u0641 \u0622\u0646 \u0627\u0633\u062a <strong>\u0627\u06cc\u062c\u0627\u062f\u060c \u062e\u0648\u0627\u0646\u062f\u0646\u060c \u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc\u060c \u0648 \u062d\u0630\u0641<\/strong>.  \u0627\u06cc\u0646 \u0686\u0647\u0627\u0631 \u0639\u0645\u0644\u06cc\u0627\u062a \u0627\u0633\u0627\u0633\u06cc \u0628\u0631\u0627\u06cc \u062a\u0639\u0627\u0645\u0644 \u0628\u0627 \u067e\u0627\u06cc\u06af\u0627\u0647 \u0647\u0627\u06cc \u062f\u0627\u062f\u0647 \u0636\u0631\u0648\u0631\u06cc \u0647\u0633\u062a\u0646\u062f \u0648 \u062f\u0631 \u0647\u0645\u0647 \u062c\u0627 \u062f\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627 \u0648 \u0633\u06cc\u0633\u062a\u0645 \u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641 \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u0646\u062f.  \u062f\u0631 \u0627\u06cc\u0646 \u0645\u0642\u0627\u0644\u0647\u060c \u0645\u0639\u0646\u0627\u06cc CRUD\u060c \u0627\u0647\u0645\u06cc\u062a \u0622\u0646 \u0648 \u0646\u062d\u0648\u0647 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0622\u0646 \u062f\u0631 \u067e\u0644\u062a\u0641\u0631\u0645\u200c\u0647\u0627 \u0648 \u0641\u0646\u0627\u0648\u0631\u06cc\u200c\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641 \u0631\u0627 \u0628\u0631\u0631\u0633\u06cc \u0645\u06cc\u200c\u06a9\u0646\u06cc\u0645.<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_81 counter-hierarchy ez-toc-counter-rtl ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">\u0641\u0647\u0631\u0633\u062a \u0645\u0637\u0627\u0644\u0628<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/nabfollower.com\/blog\/exploring-crud-what-it-is-and-how-it-works-4nnk\/#CRUD_%DA%86%DB%8C%D8%B3%D8%AA%D8%9F\" >CRUD \u0686\u06cc\u0633\u062a\u061f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/nabfollower.com\/blog\/exploring-crud-what-it-is-and-how-it-works-4nnk\/#%D8%A7%D9%87%D9%85%DB%8C%D8%AA_CRUD\" >\u0627\u0647\u0645\u06cc\u062a CRUD<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/nabfollower.com\/blog\/exploring-crud-what-it-is-and-how-it-works-4nnk\/#CRUD_%D8%AF%D8%B1_%D8%AA%D9%88%D8%B3%D8%B9%D9%87_%D9%88%D8%A8\" >CRUD \u062f\u0631 \u062a\u0648\u0633\u0639\u0647 \u0648\u0628<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/nabfollower.com\/blog\/exploring-crud-what-it-is-and-how-it-works-4nnk\/#API_%D9%87%D8%A7%DB%8C_RESTful\" >API \u0647\u0627\u06cc RESTful<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/nabfollower.com\/blog\/exploring-crud-what-it-is-and-how-it-works-4nnk\/#%D9%85%D8%AB%D8%A7%D9%84_%D8%A8%D8%A7_Nodejs_%D9%88_Express\" >\u0645\u062b\u0627\u0644 \u0628\u0627 Node.js \u0648 Express<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/nabfollower.com\/blog\/exploring-crud-what-it-is-and-how-it-works-4nnk\/#CRUD_%D8%AF%D8%B1_%D9%85%D8%AF%DB%8C%D8%B1%DB%8C%D8%AA_%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87_%D8%AF%D8%A7%D8%AF%D9%87\" >CRUD \u062f\u0631 \u0645\u062f\u06cc\u0631\u06cc\u062a \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/nabfollower.com\/blog\/exploring-crud-what-it-is-and-how-it-works-4nnk\/#%D9%85%D8%AB%D8%A7%D9%84_%D8%A8%D8%A7_MySQL\" >\u0645\u062b\u0627\u0644 \u0628\u0627 MySQL<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/nabfollower.com\/blog\/exploring-crud-what-it-is-and-how-it-works-4nnk\/#CRUD_%D8%AF%D8%B1_%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87_%D9%87%D8%A7%DB%8C_%D8%AF%D8%A7%D8%AF%D9%87_NoSQL\" >CRUD \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u0647\u0627\u06cc \u062f\u0627\u062f\u0647 NoSQL<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/nabfollower.com\/blog\/exploring-crud-what-it-is-and-how-it-works-4nnk\/#%D9%85%D8%AB%D8%A7%D9%84_%D8%A8%D8%A7_MongoDB\" >\u0645\u062b\u0627\u0644 \u0628\u0627 MongoDB<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/nabfollower.com\/blog\/exploring-crud-what-it-is-and-how-it-works-4nnk\/#CRUD_%D8%AF%D8%B1_%D8%AA%D9%88%D8%B3%D8%B9%D9%87_Frontend\" >CRUD \u062f\u0631 \u062a\u0648\u0633\u0639\u0647 Frontend<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/nabfollower.com\/blog\/exploring-crud-what-it-is-and-how-it-works-4nnk\/#%D9%85%D8%AB%D8%A7%D9%84_%D8%A8%D8%A7_React\" >\u0645\u062b\u0627\u0644 \u0628\u0627 React<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/nabfollower.com\/blog\/exploring-crud-what-it-is-and-how-it-works-4nnk\/#CRUD_%D8%AF%D8%B1_%D8%AA%D9%88%D8%B3%D8%B9%D9%87_%D9%85%D9%88%D8%A8%D8%A7%DB%8C%D9%84\" >CRUD \u062f\u0631 \u062a\u0648\u0633\u0639\u0647 \u0645\u0648\u0628\u0627\u06cc\u0644<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/nabfollower.com\/blog\/exploring-crud-what-it-is-and-how-it-works-4nnk\/#%D9%85%D8%AB%D8%A7%D9%84_%D8%A8%D8%A7_%D8%A7%D9%86%D8%AF%D8%B1%D9%88%DB%8C%D8%AF_%D8%AC%D8%A7%D9%88%D8%A7\" >\u0645\u062b\u0627\u0644 \u0628\u0627 \u0627\u0646\u062f\u0631\u0648\u06cc\u062f (\u062c\u0627\u0648\u0627)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/nabfollower.com\/blog\/exploring-crud-what-it-is-and-how-it-works-4nnk\/#%D9%85%D8%AB%D8%A7%D9%84_%D8%A8%D8%A7_%D9%81%D9%84%D8%A7%D8%AA%D8%B1\" >\u0645\u062b\u0627\u0644 \u0628\u0627 \u0641\u0644\u0627\u062a\u0631<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/nabfollower.com\/blog\/exploring-crud-what-it-is-and-how-it-works-4nnk\/#%D9%86%D8%AA%DB%8C%D8%AC%D9%87\" >\u0646\u062a\u06cc\u062c\u0647<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/nabfollower.com\/blog\/exploring-crud-what-it-is-and-how-it-works-4nnk\/#%F0%9F%92%B0_%D8%B4%D9%85%D8%A7_%D9%85%DB%8C_%D8%AA%D9%88%D8%A7%D9%86%DB%8C%D8%AF_%D8%A8%D8%A7_%D8%A7%D9%87%D8%AF%D8%A7_%D8%A8%D9%87_%D9%85%D9%86_%DA%A9%D9%85%DA%A9_%DA%A9%D9%86%DB%8C%D8%AF\" >\ud83d\udcb0 \u0634\u0645\u0627 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0628\u0627 \u0627\u0647\u062f\u0627 \u0628\u0647 \u0645\u0646 \u06a9\u0645\u06a9 \u06a9\u0646\u06cc\u062f<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"CRUD_%DA%86%DB%8C%D8%B3%D8%AA%D8%9F\"><\/span>\n<p>  CRUD \u0686\u06cc\u0633\u062a\u061f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>CRUD \u0645\u062e\u0641\u0641 \u0686\u0647\u0627\u0631 \u0639\u0645\u0644\u06cc\u0627\u062a \u0627\u0635\u0644\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0630\u062e\u06cc\u0631\u0647 \u0633\u0627\u0632\u06cc \u067e\u0627\u06cc\u062f\u0627\u0631 \u0627\u0633\u062a.  \u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0628\u0631\u0627\u06cc \u0639\u0645\u0644\u06a9\u0631\u062f \u0647\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc \u0645\u0628\u062a\u0646\u06cc \u0628\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0636\u0631\u0648\u0631\u06cc \u0627\u0633\u062a.  \u0628\u06cc\u0627\u06cc\u06cc\u062f \u0647\u0631 \u062c\u0632\u0621 \u0631\u0627 \u062a\u062c\u0632\u06cc\u0647 \u06a9\u0646\u06cc\u0645:<\/p>\n<ol>\n<li>\n<strong>\u0627\u064a\u062c\u0627\u062f \u0643\u0631\u062f\u0646<\/strong>: \u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0634\u0627\u0645\u0644 \u0627\u0641\u0632\u0648\u062f\u0646 \u0631\u06a9\u0648\u0631\u062f\u0647\u0627 \u06cc\u0627 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u062c\u062f\u06cc\u062f \u0628\u0647 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0627\u0633\u062a.  \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c \u0632\u0645\u0627\u0646\u06cc \u06a9\u0647 \u06a9\u0627\u0631\u0628\u0631 \u062f\u0631 \u06cc\u06a9 \u0648\u0628 \u0633\u0627\u06cc\u062a \u062b\u0628\u062a \u0646\u0627\u0645 \u0645\u06cc \u06a9\u0646\u062f\u060c \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0627\u0648 \u0627\u06cc\u062c\u0627\u062f \u0648 \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0630\u062e\u06cc\u0631\u0647 \u0645\u06cc \u0634\u0648\u062f.<\/li>\n<li>\n<strong>\u062e\u0648\u0627\u0646\u062f\u0646<\/strong>: \u0647\u0645\u0686\u0646\u06cc\u0646 \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0634\u0646\u0627\u062e\u062a\u0647 \u0645\u06cc \u0634\u0648\u062f\u060c \u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0634\u0627\u0645\u0644 \u0648\u0627\u06a9\u0634\u06cc \u06cc\u0627 \u0645\u0634\u0627\u0647\u062f\u0647 \u0631\u06a9\u0648\u0631\u062f\u0647\u0627\u06cc \u0645\u0648\u062c\u0648\u062f \u0627\u0632 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0627\u0633\u062a.  \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c \u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u0648\u0627\u0631\u062f \u0633\u06cc\u0633\u062a\u0645 \u0645\u06cc \u0634\u0648\u062f \u0648 \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u067e\u0631\u0648\u0641\u0627\u06cc\u0644 \u0627\u0648 \u0646\u0645\u0627\u06cc\u0634 \u062f\u0627\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f\u060c \u0633\u06cc\u0633\u062a\u0645 \u0627\u06cc\u0646 \u062f\u0627\u062f\u0647 \u0647\u0627 \u0631\u0627 \u0627\u0632 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u06cc \u062e\u0648\u0627\u0646\u062f.<\/li>\n<li>\n<strong>\u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc<\/strong>: \u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0645\u0631\u0628\u0648\u0637 \u0628\u0647 \u0627\u0635\u0644\u0627\u062d \u0631\u06a9\u0648\u0631\u062f\u0647\u0627\u06cc \u0645\u0648\u062c\u0648\u062f \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0627\u0633\u062a.  \u06cc\u06a9 \u0645\u062b\u0627\u0644 \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u06a9\u0627\u0631\u0628\u0631\u06cc \u0628\u0627\u0634\u062f \u06a9\u0647 \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0646\u0645\u0627\u06cc\u0647 \u062e\u0648\u062f \u0631\u0627 \u0628\u0647 \u0631\u0648\u0632 \u0645\u06cc \u06a9\u0646\u062f\u060c \u0645\u0627\u0646\u0646\u062f \u062a\u063a\u06cc\u06cc\u0631 \u0622\u062f\u0631\u0633 \u0627\u06cc\u0645\u06cc\u0644 \u062e\u0648\u062f.<\/li>\n<li>\n<strong>\u062d\u0630\u0641<\/strong>: \u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0634\u0627\u0645\u0644 \u062d\u0630\u0641 \u0631\u06a9\u0648\u0631\u062f\u0647\u0627 \u0627\u0632 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0627\u0633\u062a.  \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c \u0627\u06af\u0631 \u06a9\u0627\u0631\u0628\u0631 \u062a\u0635\u0645\u06cc\u0645 \u0628\u0647 \u062d\u0630\u0641 \u062d\u0633\u0627\u0628 \u062e\u0648\u062f \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u062f\u060c \u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0627\u0648 \u0631\u0627 \u0627\u0632 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u062d\u0630\u0641 \u0645\u06cc \u06a9\u0646\u062f.<\/li>\n<\/ol>\n<p>\u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0628\u0631\u0627\u06cc \u062d\u0641\u0638 \u06cc\u06a9\u067e\u0627\u0631\u0686\u06af\u06cc \u0648 \u0639\u0645\u0644\u06a9\u0631\u062f \u0647\u0631 \u0633\u06cc\u0633\u062a\u0645\u06cc \u06a9\u0647 \u0628\u0647 \u0630\u062e\u06cc\u0631\u0647 \u0633\u0627\u0632\u06cc \u0648 \u0645\u062f\u06cc\u0631\u06cc\u062a \u062f\u0627\u062f\u0647 \u0647\u0627 \u0645\u062a\u06a9\u06cc \u0627\u0633\u062a\u060c \u062d\u06cc\u0627\u062a\u06cc \u0647\u0633\u062a\u0646\u062f.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D8%A7%D9%87%D9%85%DB%8C%D8%AA_CRUD\"><\/span>\n<p>  \u0627\u0647\u0645\u06cc\u062a CRUD<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0633\u062a\u0648\u0646 \u0641\u0642\u0631\u0627\u062a \u0647\u0631 \u0633\u06cc\u0633\u062a\u0645 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0627\u0633\u062a.  \u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u062f\u0644\u06cc\u0644 \u0627\u0647\u0645\u06cc\u062a \u0622\u0646\u0647\u0627 \u0627\u0633\u062a:<\/p>\n<ul>\n<li>\n<strong>\u0645\u062f\u06cc\u0631\u06cc\u062a \u0627\u0637\u0644\u0627\u0639\u0627\u062a<\/strong>: \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0627\u0645\u06a9\u0627\u0646 \u0645\u062f\u06cc\u0631\u06cc\u062a \u06a9\u0627\u0631\u0622\u0645\u062f \u062f\u0627\u062f\u0647 \u0647\u0627 \u0631\u0627 \u0641\u0631\u0627\u0647\u0645 \u0645\u06cc \u06a9\u0646\u062f \u0648 \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u062d\u0627\u0635\u0644 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0645\u06cc \u062a\u0648\u0627\u0646\u0646\u062f \u0628\u0647 \u0631\u0627\u062d\u062a\u06cc \u0627\u06cc\u062c\u0627\u062f\u060c \u062f\u0633\u062a\u0631\u0633\u06cc\u060c \u0627\u0635\u0644\u0627\u062d \u0648 \u062d\u0630\u0641 \u0634\u0648\u0646\u062f.<\/li>\n<li>\n<strong>\u062a\u0639\u0627\u0645\u0644 \u06a9\u0627\u0631\u0628\u0631<\/strong>: \u0628\u06cc\u0634\u062a\u0631 \u0631\u0627\u0628\u0637 \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u06cc \u062d\u0648\u0644 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0637\u0631\u0627\u062d\u06cc \u0634\u062f\u0647 \u0627\u0646\u062f.  \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 \u0648\u0628\u0644\u0627\u06af \u0628\u0647 \u06a9\u0627\u0631\u0628\u0631\u0627\u0646 \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc \u062f\u0647\u062f \u062a\u0627 \u067e\u0633\u062a \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u0646\u062f\u060c \u067e\u0633\u062a \u0647\u0627 \u0631\u0627 \u0628\u062e\u0648\u0627\u0646\u0646\u062f\u060c \u067e\u0633\u062a \u0647\u0627 \u0631\u0627 \u0628\u0647 \u0631\u0648\u0632 \u06a9\u0646\u0646\u062f \u0648 \u067e\u0633\u062a \u0647\u0627 \u0631\u0627 \u062d\u0630\u0641 \u06a9\u0646\u0646\u062f.<\/li>\n<li>\n<strong>\u06cc\u06a9\u067e\u0627\u0631\u0686\u06af\u06cc \u062f\u0627\u062f\u0647<\/strong>: \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD\u060c \u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0645\u06cc \u062a\u0648\u0627\u0646\u0646\u062f \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u062d\u0627\u0635\u0644 \u06a9\u0646\u0646\u062f \u06a9\u0647 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u062b\u0627\u0628\u062a \u0648 \u062f\u0642\u06cc\u0642 \u0628\u0627\u0642\u06cc \u0645\u06cc \u0645\u0627\u0646\u0646\u062f.  \u0627\u062c\u0631\u0627\u06cc \u0635\u062d\u06cc\u062d \u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0628\u0647 \u062c\u0644\u0648\u06af\u06cc\u0631\u06cc \u0627\u0632 \u062e\u0631\u0627\u0628\u06cc \u062f\u0627\u062f\u0647 \u0647\u0627 \u06a9\u0645\u06a9 \u0645\u06cc \u06a9\u0646\u062f \u0648 \u062a\u0636\u0645\u06cc\u0646 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u06a9\u0627\u0631\u0628\u0631\u0627\u0646 \u0645\u06cc \u062a\u0648\u0627\u0646\u0646\u062f \u0645\u0637\u0627\u0628\u0642 \u0627\u0646\u062a\u0638\u0627\u0631 \u0628\u0627 \u0628\u0631\u0646\u0627\u0645\u0647 \u062a\u0639\u0627\u0645\u0644 \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u0646\u062f.<\/li>\n<li>\n<strong>\u0645\u0642\u06cc\u0627\u0633 \u067e\u0630\u06cc\u0631\u06cc \u0648 \u0642\u0627\u0628\u0644\u06cc\u062a \u0646\u06af\u0647\u062f\u0627\u0631\u06cc<\/strong>: \u0627\u062c\u0631\u0627\u06cc \u0635\u062d\u06cc\u062d \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0633\u06cc\u0633\u062a\u0645 \u0631\u0627 \u0645\u0642\u06cc\u0627\u0633 \u067e\u0630\u06cc\u0631 \u0648 \u0646\u06af\u0647\u062f\u0627\u0631\u06cc \u0622\u0633\u0627\u0646 \u062a\u0631 \u0645\u06cc \u06a9\u0646\u062f.  \u0628\u0627 \u0631\u0634\u062f \u0628\u0631\u0646\u0627\u0645\u0647\u060c \u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0645\u06cc \u062a\u0648\u0627\u0646\u0646\u062f \u062d\u062c\u0645 \u0641\u0632\u0627\u06cc\u0646\u062f\u0647 \u062f\u0627\u062f\u0647 \u0647\u0627 \u0631\u0627 \u0628\u062f\u0648\u0646 \u0628\u0647 \u062e\u0637\u0631 \u0627\u0646\u062f\u0627\u062e\u062a\u0646 \u0639\u0645\u0644\u06a9\u0631\u062f \u06cc\u0627 \u06cc\u06a9\u067e\u0627\u0631\u0686\u06af\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u06a9\u0646\u0646\u062f.<\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"CRUD_%D8%AF%D8%B1_%D8%AA%D9%88%D8%B3%D8%B9%D9%87_%D9%88%D8%A8\"><\/span>\n<p>  CRUD \u062f\u0631 \u062a\u0648\u0633\u0639\u0647 \u0648\u0628<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u062f\u0631 \u062a\u0648\u0633\u0639\u0647 \u0648\u0628\u060c \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0645\u0639\u0645\u0648\u0644\u0627\u064b \u0628\u0627 RESTful API\u0647\u0627 \u0648 \u062e\u062f\u0645\u0627\u062a \u0648\u0628 \u0645\u0631\u062a\u0628\u0637 \u0627\u0633\u062a.  \u0628\u06cc\u0627\u06cc\u06cc\u062f \u0628\u0631\u0631\u0633\u06cc \u06a9\u0646\u06cc\u0645 \u06a9\u0647 \u0686\u06af\u0648\u0646\u0647 CRUD \u062f\u0631 \u0627\u06cc\u0646 \u0632\u0645\u06cc\u0646\u0647 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0645\u06cc \u0634\u0648\u062f:<\/p>\n<h3><span class=\"ez-toc-section\" id=\"API_%D9%87%D8%A7%DB%8C_RESTful\"><\/span>\n<p>  API \u0647\u0627\u06cc RESTful<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>REST (Representational State Transfer) \u06cc\u06a9 \u0633\u0628\u06a9 \u0645\u0639\u0645\u0627\u0631\u06cc \u0627\u0633\u062a \u06a9\u0647 \u0627\u0632 \u0631\u0648\u0634 \u0647\u0627\u06cc \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f HTTP \u0628\u0631\u0627\u06cc \u0627\u0646\u062c\u0627\u0645 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f.  \u0647\u0631 \u0631\u0648\u0634 HTTP \u0645\u0631\u0628\u0648\u0637 \u0628\u0647 \u06cc\u06a9 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0627\u0633\u062a:<\/p>\n<ul>\n<li>\n<strong>\u067e\u0633\u062a<\/strong>: \u0628\u0631\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u0645\u0646\u0628\u0639 \u062c\u062f\u06cc\u062f \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f.  \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c \u0627\u0631\u0633\u0627\u0644 \u06cc\u06a9 \u062f\u0631\u062e\u0648\u0627\u0633\u062a POST \u0628\u0647 <code>\/users<\/code> \u0628\u0627 \u0645\u0634\u062e\u0635\u0627\u062a \u06a9\u0627\u0631\u0628\u0631 \u062f\u0631 \u0628\u062f\u0646\u060c \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u062c\u062f\u06cc\u062f \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc \u06a9\u0646\u062f.<\/li>\n<li>\n<strong>\u06af\u0631\u0641\u062a\u0646<\/strong>: \u0628\u0631\u0627\u06cc \u062e\u0648\u0627\u0646\u062f\u0646 \u06cc\u0627 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u06cc\u06a9 \u0645\u0646\u0628\u0639 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f.  \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c \u0627\u0631\u0633\u0627\u0644 \u06cc\u06a9 \u062f\u0631\u062e\u0648\u0627\u0633\u062a GET \u0628\u0647 <code>\/users\/1<\/code> \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u06a9\u0627\u0631\u0628\u0631 \u0628\u0627 \u0634\u0646\u0627\u0633\u0647 1 \u0631\u0627 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0645\u06cc \u06a9\u0646\u062f.<\/li>\n<li>\n<strong>\u0642\u0631\u0627\u0631 \u062f\u0627\u062f\u0646<\/strong>: \u0628\u0631\u0627\u06cc \u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc \u06cc\u06a9 \u0645\u0646\u0628\u0639 \u0645\u0648\u062c\u0648\u062f \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f.  \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c \u0627\u0631\u0633\u0627\u0644 \u06cc\u06a9 \u062f\u0631\u062e\u0648\u0627\u0633\u062a PUT \u0628\u0647 <code>\/users\/1<\/code> \u0628\u0627 \u062c\u0632\u0626\u06cc\u0627\u062a \u06a9\u0627\u0631\u0628\u0631 \u0628\u0647 \u0631\u0648\u0632 \u0634\u062f\u0647 \u062f\u0631 \u0628\u062f\u0646\u060c \u06a9\u0627\u0631\u0628\u0631 \u0628\u0627 \u0634\u0646\u0627\u0633\u0647 1 \u0628\u0647 \u0631\u0648\u0632 \u0645\u06cc \u0634\u0648\u062f.<\/li>\n<li>\n<strong>\u062d\u0630\u0641<\/strong>: \u0628\u0631\u0627\u06cc \u062d\u0630\u0641 \u06cc\u06a9 \u0645\u0646\u0628\u0639 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f.  \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c \u0627\u0631\u0633\u0627\u0644 \u06cc\u06a9 \u062f\u0631\u062e\u0648\u0627\u0633\u062a DELETE \u0628\u0647 <code>\/users\/1<\/code> \u06a9\u0627\u0631\u0628\u0631 \u0628\u0627 \u0634\u0646\u0627\u0633\u0647 1 \u0631\u0627 \u062d\u0630\u0641 \u0645\u06cc \u06a9\u0646\u062f.<\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%AB%D8%A7%D9%84_%D8%A8%D8%A7_Nodejs_%D9%88_Express\"><\/span>\n<p>  \u0645\u062b\u0627\u0644 \u0628\u0627 Node.js \u0648 Express<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u06cc\u06a9 \u0645\u062b\u0627\u0644 \u0633\u0627\u062f\u0647 \u0627\u0632 \u0646\u062d\u0648\u0647 \u0627\u062c\u0631\u0627\u06cc \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u062f\u0631 \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 Node.js \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0686\u0627\u0631\u0686\u0648\u0628 Express \u0622\u0648\u0631\u062f\u0647 \u0634\u062f\u0647 \u0627\u0633\u062a:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight javascript\"><code><span class=\"kd\">const<\/span> <span class=\"nx\">express<\/span> <span class=\"o\">=<\/span> <span class=\"nf\">require<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">express<\/span><span class=\"dl\">'<\/span><span class=\"p\">);<\/span>\n<span class=\"kd\">const<\/span> <span class=\"nx\">app<\/span> <span class=\"o\">=<\/span> <span class=\"nf\">express<\/span><span class=\"p\">();<\/span>\n<span class=\"nx\">app<\/span><span class=\"p\">.<\/span><span class=\"nf\">use<\/span><span class=\"p\">(<\/span><span class=\"nx\">express<\/span><span class=\"p\">.<\/span><span class=\"nf\">json<\/span><span class=\"p\">());<\/span>\n\n<span class=\"kd\">let<\/span> <span class=\"nx\">users<\/span> <span class=\"o\">=<\/span> <span class=\"p\">[];<\/span>\n\n<span class=\"c1\">\/\/ Create<\/span>\n<span class=\"nx\">app<\/span><span class=\"p\">.<\/span><span class=\"nf\">post<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">\/users<\/span><span class=\"dl\">'<\/span><span class=\"p\">,<\/span> <span class=\"p\">(<\/span><span class=\"nx\">req<\/span><span class=\"p\">,<\/span> <span class=\"nx\">res<\/span><span class=\"p\">)<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"p\">{<\/span>\n  <span class=\"kd\">const<\/span> <span class=\"nx\">user<\/span> <span class=\"o\">=<\/span> <span class=\"nx\">req<\/span><span class=\"p\">.<\/span><span class=\"nx\">body<\/span><span class=\"p\">;<\/span>\n  <span class=\"nx\">users<\/span><span class=\"p\">.<\/span><span class=\"nf\">push<\/span><span class=\"p\">(<\/span><span class=\"nx\">user<\/span><span class=\"p\">);<\/span>\n  <span class=\"nx\">res<\/span><span class=\"p\">.<\/span><span class=\"nf\">status<\/span><span class=\"p\">(<\/span><span class=\"mi\">201<\/span><span class=\"p\">).<\/span><span class=\"nf\">send<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">User created<\/span><span class=\"dl\">'<\/span><span class=\"p\">);<\/span>\n<span class=\"p\">});<\/span>\n\n<span class=\"c1\">\/\/ Read<\/span>\n<span class=\"nx\">app<\/span><span class=\"p\">.<\/span><span class=\"nf\">get<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">\/users<\/span><span class=\"dl\">'<\/span><span class=\"p\">,<\/span> <span class=\"p\">(<\/span><span class=\"nx\">req<\/span><span class=\"p\">,<\/span> <span class=\"nx\">res<\/span><span class=\"p\">)<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nx\">res<\/span><span class=\"p\">.<\/span><span class=\"nf\">json<\/span><span class=\"p\">(<\/span><span class=\"nx\">users<\/span><span class=\"p\">);<\/span>\n<span class=\"p\">});<\/span>\n\n<span class=\"c1\">\/\/ Update<\/span>\n<span class=\"nx\">app<\/span><span class=\"p\">.<\/span><span class=\"nf\">put<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">\/users\/:id<\/span><span class=\"dl\">'<\/span><span class=\"p\">,<\/span> <span class=\"p\">(<\/span><span class=\"nx\">req<\/span><span class=\"p\">,<\/span> <span class=\"nx\">res<\/span><span class=\"p\">)<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"p\">{<\/span>\n  <span class=\"kd\">const<\/span> <span class=\"nx\">id<\/span> <span class=\"o\">=<\/span> <span class=\"nf\">parseInt<\/span><span class=\"p\">(<\/span><span class=\"nx\">req<\/span><span class=\"p\">.<\/span><span class=\"nx\">params<\/span><span class=\"p\">.<\/span><span class=\"nx\">id<\/span><span class=\"p\">);<\/span>\n  <span class=\"kd\">const<\/span> <span class=\"nx\">updatedUser<\/span> <span class=\"o\">=<\/span> <span class=\"nx\">req<\/span><span class=\"p\">.<\/span><span class=\"nx\">body<\/span><span class=\"p\">;<\/span>\n  <span class=\"nx\">users<\/span> <span class=\"o\">=<\/span> <span class=\"nx\">users<\/span><span class=\"p\">.<\/span><span class=\"nf\">map<\/span><span class=\"p\">(<\/span><span class=\"nx\">user<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nx\">user<\/span><span class=\"p\">.<\/span><span class=\"nx\">id<\/span> <span class=\"o\">===<\/span> <span class=\"nx\">id<\/span> <span class=\"p\">?<\/span> <span class=\"nx\">updatedUser<\/span> <span class=\"p\">:<\/span> <span class=\"nx\">user<\/span><span class=\"p\">);<\/span>\n  <span class=\"nx\">res<\/span><span class=\"p\">.<\/span><span class=\"nf\">send<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">User updated<\/span><span class=\"dl\">'<\/span><span class=\"p\">);<\/span>\n<span class=\"p\">});<\/span>\n\n<span class=\"c1\">\/\/ Delete<\/span>\n<span class=\"nx\">app<\/span><span class=\"p\">.<\/span><span class=\"k\">delete<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">\/users\/:id<\/span><span class=\"dl\">'<\/span><span class=\"p\">,<\/span> <span class=\"p\">(<\/span><span class=\"nx\">req<\/span><span class=\"p\">,<\/span> <span class=\"nx\">res<\/span><span class=\"p\">)<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"p\">{<\/span>\n  <span class=\"kd\">const<\/span> <span class=\"nx\">id<\/span> <span class=\"o\">=<\/span> <span class=\"nf\">parseInt<\/span><span class=\"p\">(<\/span><span class=\"nx\">req<\/span><span class=\"p\">.<\/span><span class=\"nx\">params<\/span><span class=\"p\">.<\/span><span class=\"nx\">id<\/span><span class=\"p\">);<\/span>\n  <span class=\"nx\">users<\/span> <span class=\"o\">=<\/span> <span class=\"nx\">users<\/span><span class=\"p\">.<\/span><span class=\"nf\">filter<\/span><span class=\"p\">(<\/span><span class=\"nx\">user<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nx\">user<\/span><span class=\"p\">.<\/span><span class=\"nx\">id<\/span> <span class=\"o\">!==<\/span> <span class=\"nx\">id<\/span><span class=\"p\">);<\/span>\n  <span class=\"nx\">res<\/span><span class=\"p\">.<\/span><span class=\"nf\">send<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">User deleted<\/span><span class=\"dl\">'<\/span><span class=\"p\">);<\/span>\n<span class=\"p\">});<\/span>\n\n<span class=\"nx\">app<\/span><span class=\"p\">.<\/span><span class=\"nf\">listen<\/span><span class=\"p\">(<\/span><span class=\"mi\">3000<\/span><span class=\"p\">,<\/span> <span class=\"p\">()<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nx\">console<\/span><span class=\"p\">.<\/span><span class=\"nf\">log<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">Server running on port 3000<\/span><span class=\"dl\">'<\/span><span class=\"p\">));<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u062f\u0631 \u0627\u06cc\u0646 \u0645\u062b\u0627\u0644\u060c \u0645\u0627 \u0645\u0633\u06cc\u0631\u0647\u0627\u06cc\u06cc \u0631\u0627 \u0628\u0631\u0627\u06cc \u0647\u0631 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u062a\u0639\u0631\u06cc\u0641 \u0645\u06cc \u06a9\u0646\u06cc\u0645 \u0648 \u0645\u0646\u0637\u0642 \u0645\u0631\u0628\u0648\u0637\u0647 \u0631\u0627 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0645\u06cc \u06a9\u0646\u06cc\u0645.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"CRUD_%D8%AF%D8%B1_%D9%85%D8%AF%DB%8C%D8%B1%DB%8C%D8%AA_%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87_%D8%AF%D8%A7%D8%AF%D9%87\"><\/span>\n<p>  CRUD \u062f\u0631 \u0645\u062f\u06cc\u0631\u06cc\u062a \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0645\u062d\u062f\u0648\u062f \u0628\u0647 \u062a\u0648\u0633\u0639\u0647 \u0648\u0628 \u0646\u06cc\u0633\u062a.  \u0622\u0646\u0647\u0627 \u0647\u0645\u0686\u0646\u06cc\u0646 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0627\u0633\u0627\u0633\u06cc \u0647\u0633\u062a\u0646\u062f.  \u0627\u06a9\u062b\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u0647\u0627\u06cc \u062f\u0627\u062f\u0647 \u0631\u0627\u0628\u0637\u0647 \u0627\u06cc \u0627\u0632 SQL (\u0632\u0628\u0627\u0646 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u0633\u0627\u062e\u062a\u0627\u0631\u06cc\u0627\u0641\u062a\u0647) \u0628\u0631\u0627\u06cc \u0627\u0646\u062c\u0627\u0645 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u0646\u062f.  \u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u0646\u062d\u0648\u0647 \u062a\u0631\u062c\u0645\u0647 \u0647\u0631 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0628\u0647 SQL \u0622\u0645\u062f\u0647 \u0627\u0633\u062a:<\/p>\n<ul>\n<li>\n<strong>\u0627\u064a\u062c\u0627\u062f \u0643\u0631\u062f\u0646<\/strong>: <code>INSERT INTO users (name, email) VALUES ('John Doe', 'john@example.com');<\/code>\n<\/li>\n<li>\n<strong>\u062e\u0648\u0627\u0646\u062f\u0646<\/strong>: <code>SELECT * FROM users WHERE id = 1;<\/code>\n<\/li>\n<li>\n<strong>\u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc<\/strong>: <code>UPDATE users SET email=\"john.new@example.com\" WHERE id = 1;<\/code>\n<\/li>\n<li>\n<strong>\u062d\u0630\u0641<\/strong>: <code>DELETE FROM users WHERE id = 1;<\/code>\n<\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%AB%D8%A7%D9%84_%D8%A8%D8%A7_MySQL\"><\/span>\n<p>  \u0645\u062b\u0627\u0644 \u0628\u0627 MySQL<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u0646\u062d\u0648\u0647 \u0627\u062c\u0631\u0627\u06cc \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 MySQL \u0622\u0648\u0631\u062f\u0647 \u0634\u062f\u0647 \u0627\u0633\u062a:<\/p>\n<ol>\n<li>\n<strong>\u0627\u064a\u062c\u0627\u062f \u0643\u0631\u062f\u0646<\/strong>:\n<\/li>\n<\/ol>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight sql\"><code><span class=\"k\">INSERT<\/span> <span class=\"k\">INTO<\/span> <span class=\"n\">users<\/span> <span class=\"p\">(<\/span><span class=\"n\">name<\/span><span class=\"p\">,<\/span> <span class=\"n\">email<\/span><span class=\"p\">)<\/span> <span class=\"k\">VALUES<\/span> <span class=\"p\">(<\/span><span class=\"s1\">'John Doe'<\/span><span class=\"p\">,<\/span> <span class=\"s1\">'john@example.com'<\/span><span class=\"p\">);<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<ol>\n<li>\n<strong>\u062e\u0648\u0627\u0646\u062f\u0646<\/strong>:\n<\/li>\n<\/ol>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight sql\"><code><span class=\"k\">SELECT<\/span> <span class=\"o\">*<\/span> <span class=\"k\">FROM<\/span> <span class=\"n\">users<\/span> <span class=\"k\">WHERE<\/span> <span class=\"n\">id<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">1<\/span><span class=\"p\">;<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<ol>\n<li>\n<strong>\u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc<\/strong>:\n<\/li>\n<\/ol>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight sql\"><code><span class=\"k\">UPDATE<\/span> <span class=\"n\">users<\/span> <span class=\"k\">SET<\/span> <span class=\"n\">email<\/span> <span class=\"o\">=<\/span> <span class=\"s1\">'john.new@example.com'<\/span> <span class=\"k\">WHERE<\/span> <span class=\"n\">id<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">1<\/span><span class=\"p\">;<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<ol>\n<li>\n<strong>\u062d\u0630\u0641<\/strong>:\n<\/li>\n<\/ol>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight sql\"><code><span class=\"k\">DELETE<\/span> <span class=\"k\">FROM<\/span> <span class=\"n\">users<\/span> <span class=\"k\">WHERE<\/span> <span class=\"n\">id<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">1<\/span><span class=\"p\">;<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u067e\u0631\u0633 \u0648 \u062c\u0648\u0647\u0627\u06cc SQL \u0627\u062c\u0631\u0627 \u0645\u06cc \u0634\u0648\u0646\u062f \u0648 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u062f\u0627\u062f\u0647 \u0647\u0627 \u062f\u0631 \u06cc\u06a9 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0631\u0627\u0628\u0637\u0647 \u0627\u06cc \u0636\u0631\u0648\u0631\u06cc \u0647\u0633\u062a\u0646\u062f.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"CRUD_%D8%AF%D8%B1_%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87_%D9%87%D8%A7%DB%8C_%D8%AF%D8%A7%D8%AF%D9%87_NoSQL\"><\/span>\n<p>  CRUD \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u0647\u0627\u06cc \u062f\u0627\u062f\u0647 NoSQL<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u062f\u0631 \u062d\u0627\u0644\u06cc \u06a9\u0647 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u0647\u0627\u06cc \u062f\u0627\u062f\u0647 \u0631\u0627\u0628\u0637\u0647\u200c\u0627\u06cc \u0633\u0627\u062f\u0647 \u0647\u0633\u062a\u0646\u062f\u060c \u0627\u0645\u0627 \u0628\u0631\u0627\u06cc \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u0647\u0627\u06cc \u062f\u0627\u062f\u0647 NoSQL \u0646\u06cc\u0632 \u0642\u0627\u0628\u0644 \u0627\u062c\u0631\u0627 \u0647\u0633\u062a\u0646\u062f\u060c \u0627\u06af\u0631\u0686\u0647 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0645\u0645\u06a9\u0646 \u0627\u0633\u062a \u0628\u0647 \u062f\u0644\u06cc\u0644 \u0645\u0627\u0647\u06cc\u062a \u0628\u062f\u0648\u0646 \u0637\u0631\u062d\u200c\u0648\u0627\u0631\u0647 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u0647\u0627\u06cc \u062f\u0627\u062f\u0647 NoSQL \u0645\u062a\u0641\u0627\u0648\u062a \u0628\u0627\u0634\u062f.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%AB%D8%A7%D9%84_%D8%A8%D8%A7_MongoDB\"><\/span>\n<p>  \u0645\u062b\u0627\u0644 \u0628\u0627 MongoDB<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>MongoDB \u06cc\u06a9 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u062d\u0628\u0648\u0628 NoSQL \u0627\u0633\u062a \u06a9\u0647 \u0627\u0632 \u06cc\u06a9 \u0645\u062f\u0644 \u0633\u0646\u062f \u06af\u0631\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f.  \u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u0646\u062d\u0648\u0647 \u0627\u062c\u0631\u0627\u06cc \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u062f\u0631 MongoDB \u0622\u0645\u062f\u0647 \u0627\u0633\u062a:<\/p>\n<ol>\n<li>\n<strong>\u0627\u064a\u062c\u0627\u062f \u0643\u0631\u062f\u0646<\/strong>:\n<\/li>\n<\/ol>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight javascript\"><code><span class=\"nx\">db<\/span><span class=\"p\">.<\/span><span class=\"nx\">users<\/span><span class=\"p\">.<\/span><span class=\"nf\">insertOne<\/span><span class=\"p\">({<\/span> <span class=\"na\">name<\/span><span class=\"p\">:<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">John Doe<\/span><span class=\"dl\">\"<\/span><span class=\"p\">,<\/span> <span class=\"na\">email<\/span><span class=\"p\">:<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">john@example.com<\/span><span class=\"dl\">\"<\/span> <span class=\"p\">});<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<ol>\n<li>\n<strong>\u062e\u0648\u0627\u0646\u062f\u0646<\/strong>:\n<\/li>\n<\/ol>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight javascript\"><code><span class=\"nx\">db<\/span><span class=\"p\">.<\/span><span class=\"nx\">users<\/span><span class=\"p\">.<\/span><span class=\"nf\">findOne<\/span><span class=\"p\">({<\/span> <span class=\"na\">_id<\/span><span class=\"p\">:<\/span> <span class=\"nc\">ObjectId<\/span><span class=\"p\">(<\/span><span class=\"dl\">\"<\/span><span class=\"s2\">60c72b2f9b1d8f1d4c8b4567<\/span><span class=\"dl\">\"<\/span><span class=\"p\">)<\/span> <span class=\"p\">});<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<ol>\n<li>\n<strong>\u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc<\/strong>:\n<\/li>\n<\/ol>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight javascript\"><code><span class=\"nx\">db<\/span><span class=\"p\">.<\/span><span class=\"nx\">users<\/span><span class=\"p\">.<\/span><span class=\"nf\">updateOne<\/span><span class=\"p\">({<\/span> <span class=\"na\">_id<\/span><span class=\"p\">:<\/span> <span class=\"nc\">ObjectId<\/span><span class=\"p\">(<\/span><span class=\"dl\">\"<\/span><span class=\"s2\">60c72b2f9b1d8f1d4c8b4567<\/span><span class=\"dl\">\"<\/span><span class=\"p\">)<\/span> <span class=\"p\">},<\/span> <span class=\"p\">{<\/span> <span class=\"na\">$set<\/span><span class=\"p\">:<\/span> <span class=\"p\">{<\/span> <span class=\"na\">email<\/span><span class=\"p\">:<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">john.new@example.com<\/span><span class=\"dl\">\"<\/span> <span class=\"p\">}<\/span> <span class=\"p\">});<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<ol>\n<li>\n<strong>\u062d\u0630\u0641<\/strong>:\n<\/li>\n<\/ol>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight javascript\"><code><span class=\"nx\">db<\/span><span class=\"p\">.<\/span><span class=\"nx\">users<\/span><span class=\"p\">.<\/span><span class=\"nf\">deleteOne<\/span><span class=\"p\">({<\/span> <span class=\"na\">_id<\/span><span class=\"p\">:<\/span> <span class=\"nc\">ObjectId<\/span><span class=\"p\">(<\/span><span class=\"dl\">\"<\/span><span class=\"s2\">60c72b2f9b1d8f1d4c8b4567<\/span><span class=\"dl\">\"<\/span><span class=\"p\">)<\/span> <span class=\"p\">});<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0627\u0632 \u0632\u0628\u0627\u0646 \u067e\u0631\u0633 \u0648 \u062c\u0648 MongoDB \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0627\u0633\u0646\u0627\u062f \u062f\u0631 \u06cc\u06a9 \u0645\u062c\u0645\u0648\u0639\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"CRUD_%D8%AF%D8%B1_%D8%AA%D9%88%D8%B3%D8%B9%D9%87_Frontend\"><\/span>\n<p>  CRUD \u062f\u0631 \u062a\u0648\u0633\u0639\u0647 Frontend<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u062f\u0631 \u062d\u0627\u0644\u06cc \u06a9\u0647 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0627\u063a\u0644\u0628 \u0628\u0627 \u062a\u0648\u0633\u0639\u0647 \u0628\u0627\u0637\u0646 \u0645\u0631\u062a\u0628\u0637 \u0627\u0633\u062a\u060c \u062f\u0631 \u062a\u0648\u0633\u0639\u0647 frontend \u0646\u06cc\u0632 \u0645\u0631\u062a\u0628\u0637 \u0627\u0633\u062a.  \u0686\u0627\u0631\u0686\u0648\u0628\u200c\u0647\u0627 \u0648 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647\u200c\u0647\u0627\u06cc \u0641\u0631\u0627\u0646\u062a\u200c\u0627\u0646\u062f \u0645\u062f\u0631\u0646 \u0645\u0627\u0646\u0646\u062f React\u060c Angular \u0648 Vue.js \u0627\u063a\u0644\u0628 \u0634\u0627\u0645\u0644 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0648\u0636\u0639\u06cc\u062a \u0628\u0631\u0646\u0627\u0645\u0647 \u0648 \u062a\u0639\u0627\u0645\u0644 \u0628\u0627 API\u0647\u0627 \u0645\u06cc\u200c\u0634\u0648\u0646\u062f.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%AB%D8%A7%D9%84_%D8%A8%D8%A7_React\"><\/span>\n<p>  \u0645\u062b\u0627\u0644 \u0628\u0627 React<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u06cc\u06a9 \u0645\u062b\u0627\u0644 \u0633\u0627\u062f\u0647 \u0627\u0632 \u0646\u062d\u0648\u0647 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u062f\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 React \u0622\u0648\u0631\u062f\u0647 \u0634\u062f\u0647 \u0627\u0633\u062a:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight javascript\"><code><span class=\"k\">import<\/span> <span class=\"nx\">React<\/span><span class=\"p\">,<\/span> <span class=\"p\">{<\/span> <span class=\"nx\">useState<\/span><span class=\"p\">,<\/span> <span class=\"nx\">useEffect<\/span> <span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">'<\/span><span class=\"s1\">react<\/span><span class=\"dl\">'<\/span><span class=\"p\">;<\/span>\n\n<span class=\"kd\">const<\/span> <span class=\"nx\">App<\/span> <span class=\"o\">=<\/span> <span class=\"p\">()<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"p\">{<\/span>\n  <span class=\"kd\">const<\/span> <span class=\"p\">[<\/span><span class=\"nx\">users<\/span><span class=\"p\">,<\/span> <span class=\"nx\">setUsers<\/span><span class=\"p\">]<\/span> <span class=\"o\">=<\/span> <span class=\"nf\">useState<\/span><span class=\"p\">([]);<\/span>\n  <span class=\"kd\">const<\/span> <span class=\"p\">[<\/span><span class=\"nx\">newUser<\/span><span class=\"p\">,<\/span> <span class=\"nx\">setNewUser<\/span><span class=\"p\">]<\/span> <span class=\"o\">=<\/span> <span class=\"nf\">useState<\/span><span class=\"p\">(<\/span><span class=\"dl\">''<\/span><span class=\"p\">);<\/span>\n\n  <span class=\"nf\">useEffect<\/span><span class=\"p\">(()<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"p\">{<\/span>\n    <span class=\"c1\">\/\/ Read<\/span>\n    <span class=\"nf\">fetch<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">\/api\/users<\/span><span class=\"dl\">'<\/span><span class=\"p\">)<\/span>\n      <span class=\"p\">.<\/span><span class=\"nf\">then<\/span><span class=\"p\">(<\/span><span class=\"nx\">response<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nx\">response<\/span><span class=\"p\">.<\/span><span class=\"nf\">json<\/span><span class=\"p\">())<\/span>\n      <span class=\"p\">.<\/span><span class=\"nf\">then<\/span><span class=\"p\">(<\/span><span class=\"nx\">data<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nf\">setUsers<\/span><span class=\"p\">(<\/span><span class=\"nx\">data<\/span><span class=\"p\">));<\/span>\n  <span class=\"p\">},<\/span> <span class=\"p\">[]);<\/span>\n\n  <span class=\"kd\">const<\/span> <span class=\"nx\">createUser<\/span> <span class=\"o\">=<\/span> <span class=\"p\">()<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"p\">{<\/span>\n    <span class=\"c1\">\/\/ Create<\/span>\n    <span class=\"nf\">fetch<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">\/api\/users<\/span><span class=\"dl\">'<\/span><span class=\"p\">,<\/span> <span class=\"p\">{<\/span>\n      <span class=\"na\">method<\/span><span class=\"p\">:<\/span> <span class=\"dl\">'<\/span><span class=\"s1\">POST<\/span><span class=\"dl\">'<\/span><span class=\"p\">,<\/span>\n      <span class=\"na\">headers<\/span><span class=\"p\">:<\/span> <span class=\"p\">{<\/span> <span class=\"dl\">'<\/span><span class=\"s1\">Content-Type<\/span><span class=\"dl\">'<\/span><span class=\"p\">:<\/span> <span class=\"dl\">'<\/span><span class=\"s1\">application\/json<\/span><span class=\"dl\">'<\/span> <span class=\"p\">},<\/span>\n      <span class=\"na\">body<\/span><span class=\"p\">:<\/span> <span class=\"nx\">JSON<\/span><span class=\"p\">.<\/span><span class=\"nf\">stringify<\/span><span class=\"p\">({<\/span> <span class=\"na\">name<\/span><span class=\"p\">:<\/span> <span class=\"nx\">newUser<\/span> <span class=\"p\">})<\/span>\n    <span class=\"p\">})<\/span>\n    <span class=\"p\">.<\/span><span class=\"nf\">then<\/span><span class=\"p\">(()<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nf\">setNewUser<\/span><span class=\"p\">(<\/span><span class=\"dl\">''<\/span><span class=\"p\">))<\/span>\n    <span class=\"p\">.<\/span><span class=\"nf\">then<\/span><span class=\"p\">(()<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nf\">fetch<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">\/api\/users<\/span><span class=\"dl\">'<\/span><span class=\"p\">).<\/span><span class=\"nf\">then<\/span><span class=\"p\">(<\/span><span class=\"nx\">response<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nx\">response<\/span><span class=\"p\">.<\/span><span class=\"nf\">json<\/span><span class=\"p\">()).<\/span><span class=\"nf\">then<\/span><span class=\"p\">(<\/span><span class=\"nx\">data<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nf\">setUsers<\/span><span class=\"p\">(<\/span><span class=\"nx\">data<\/span><span class=\"p\">)));<\/span>\n  <span class=\"p\">};<\/span>\n\n  <span class=\"kd\">const<\/span> <span class=\"nx\">updateUser<\/span> <span class=\"o\">=<\/span> <span class=\"p\">(<\/span><span class=\"nx\">id<\/span><span class=\"p\">,<\/span> <span class=\"nx\">newName<\/span><span class=\"p\">)<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"p\">{<\/span>\n    <span class=\"c1\">\/\/ Update<\/span>\n    <span class=\"nf\">fetch<\/span><span class=\"p\">(<\/span><span class=\"s2\">`\/api\/users\/<\/span><span class=\"p\">${<\/span><span class=\"nx\">id<\/span><span class=\"p\">}<\/span><span class=\"s2\">`<\/span><span class=\"p\">,<\/span> <span class=\"p\">{<\/span>\n      <span class=\"na\">method<\/span><span class=\"p\">:<\/span> <span class=\"dl\">'<\/span><span class=\"s1\">PUT<\/span><span class=\"dl\">'<\/span><span class=\"p\">,<\/span>\n      <span class=\"na\">headers<\/span><span class=\"p\">:<\/span> <span class=\"p\">{<\/span> <span class=\"dl\">'<\/span><span class=\"s1\">Content-Type<\/span><span class=\"dl\">'<\/span><span class=\"p\">:<\/span> <span class=\"dl\">'<\/span><span class=\"s1\">application\/json<\/span><span class=\"dl\">'<\/span> <span class=\"p\">},<\/span>\n      <span class=\"na\">body<\/span><span class=\"p\">:<\/span> <span class=\"nx\">JSON<\/span><span class=\"p\">.<\/span><span class=\"nf\">stringify<\/span><span class=\"p\">({<\/span> <span class=\"na\">name<\/span><span class=\"p\">:<\/span> <span class=\"nx\">newName<\/span> <span class=\"p\">})<\/span>\n    <span class=\"p\">})<\/span>\n    <span class=\"p\">.<\/span><span class=\"nf\">then<\/span><span class=\"p\">(()<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nf\">fetch<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">\/api\/users<\/span><span class=\"dl\">'<\/span><span class=\"p\">).<\/span><span class=\"nf\">then<\/span><span class=\"p\">(<\/span><span class=\"nx\">response<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nx\">response<\/span><span class=\"p\">.<\/span><span class=\"nf\">json<\/span><span class=\"p\">()).<\/span><span class=\"nf\">then<\/span><span class=\"p\">(<\/span><span class=\"nx\">data<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nf\">setUsers<\/span><span class=\"p\">(<\/span><span class=\"nx\">data<\/span><span class=\"p\">)));<\/span>\n  <span class=\"p\">};<\/span>\n\n  <span class=\"kd\">const<\/span> <span class=\"nx\">deleteUser<\/span> <span class=\"o\">=<\/span> <span class=\"nx\">id<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"p\">{<\/span>\n    <span class=\"c1\">\/\/ Delete<\/span>\n    <span class=\"nf\">fetch<\/span><span class=\"p\">(<\/span><span class=\"s2\">`\/api\/users\/<\/span><span class=\"p\">${<\/span><span class=\"nx\">id<\/span><span class=\"p\">}<\/span><span class=\"s2\">`<\/span><span class=\"p\">,<\/span> <span class=\"p\">{<\/span> <span class=\"na\">method<\/span><span class=\"p\">:<\/span> <span class=\"dl\">'<\/span><span class=\"s1\">DELETE<\/span><span class=\"dl\">'<\/span> <span class=\"p\">})<\/span>\n    <span class=\"p\">.<\/span><span class=\"nf\">then<\/span><span class=\"p\">(()<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nf\">fetch<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">\/api\/users<\/span><span class=\"dl\">'<\/span><span class=\"p\">).<\/span><span class=\"nf\">then<\/span><span class=\"p\">(<\/span><span class=\"nx\">response<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nx\">response<\/span><span class=\"p\">.<\/span><span class=\"nf\">json<\/span><span class=\"p\">()).<\/span><span class=\"nf\">then<\/span><span class=\"p\">(<\/span><span class=\"nx\">data<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nf\">setUsers<\/span><span class=\"p\">(<\/span><span class=\"nx\">data<\/span><span class=\"p\">)));<\/span>\n  <span class=\"p\">};<\/span>\n\n  <span class=\"k\">return <\/span><span class=\"p\">(<\/span>\n    <span class=\"o\">&lt;<\/span><span class=\"nx\">div<\/span><span class=\"o\">&gt;<\/span>\n      <span class=\"o\">&lt;<\/span><span class=\"nx\">h1<\/span><span class=\"o\">&gt;<\/span><span class=\"nx\">Users<\/span><span class=\"o\">&lt;<\/span><span class=\"sr\">\/h1<\/span><span class=\"err\">&gt;\n<\/span>      <span class=\"o\">&lt;<\/span><span class=\"nx\">ul<\/span><span class=\"o\">&gt;<\/span>\n        <span class=\"p\">{<\/span><span class=\"nx\">users<\/span><span class=\"p\">.<\/span><span class=\"nf\">map<\/span><span class=\"p\">(<\/span><span class=\"nx\">user<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"p\">(<\/span>\n          <span class=\"o\">&lt;<\/span><span class=\"nx\">li<\/span> <span class=\"nx\">key<\/span><span class=\"o\">=<\/span><span class=\"p\">{<\/span><span class=\"nx\">user<\/span><span class=\"p\">.<\/span><span class=\"nx\">id<\/span><span class=\"p\">}<\/span><span class=\"o\">&gt;<\/span>\n            <span class=\"p\">{<\/span><span class=\"nx\">user<\/span><span class=\"p\">.<\/span><span class=\"nx\">name<\/span><span class=\"p\">}<\/span>\n            <span class=\"o\">&lt;<\/span><span class=\"nx\">button<\/span> <span class=\"nx\">onClick<\/span><span class=\"o\">=<\/span><span class=\"p\">{()<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nf\">updateUser<\/span><span class=\"p\">(<\/span><span class=\"nx\">user<\/span><span class=\"p\">.<\/span><span class=\"nx\">id<\/span><span class=\"p\">,<\/span> <span class=\"nf\">prompt<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">New name:<\/span><span class=\"dl\">'<\/span><span class=\"p\">,<\/span> <span class=\"nx\">user<\/span><span class=\"p\">.<\/span><span class=\"nx\">name<\/span><span class=\"p\">))}<\/span><span class=\"o\">&gt;<\/span><span class=\"nx\">Update<\/span><span class=\"o\">&lt;<\/span><span class=\"sr\">\/button<\/span><span class=\"err\">&gt;\n<\/span>            <span class=\"o\">&lt;<\/span><span class=\"nx\">button<\/span> <span class=\"nx\">onClick<\/span><span class=\"o\">=<\/span><span class=\"p\">{()<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nf\">deleteUser<\/span><span class=\"p\">(<\/span><span class=\"nx\">user<\/span><span class=\"p\">.<\/span><span class=\"nx\">id<\/span><span class=\"p\">)}<\/span><span class=\"o\">&gt;<\/span><span class=\"nx\">Delete<\/span><span class=\"o\">&lt;<\/span><span class=\"sr\">\/button<\/span><span class=\"err\">&gt;\n<\/span>          <span class=\"o\">&lt;<\/span><span class=\"sr\">\/li<\/span><span class=\"err\">&gt;\n<\/span>        <span class=\"p\">))}<\/span>\n      <span class=\"o\">&lt;<\/span><span class=\"sr\">\/ul<\/span><span class=\"err\">&gt;\n<\/span>      <span class=\"o\">&lt;<\/span><span class=\"nx\">input<\/span> <span class=\"nx\">value<\/span><span class=\"o\">=<\/span><span class=\"p\">{<\/span><span class=\"nx\">newUser<\/span><span class=\"p\">}<\/span> <span class=\"nx\">onChange<\/span><span class=\"o\">=<\/span><span class=\"p\">{<\/span><span class=\"nx\">e<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nf\">setNewUser<\/span><span class=\"p\">(<\/span><span class=\"nx\">e<\/span><span class=\"p\">.<\/span><span class=\"nx\">target<\/span><span class=\"p\">.<\/span><span class=\"nx\">value<\/span><span class=\"p\">)}<\/span> <span class=\"sr\">\/<\/span><span class=\"err\">&gt;\n<\/span>      <span class=\"o\">&lt;<\/span><span class=\"nx\">button<\/span> <span class=\"nx\">onClick<\/span><span class=\"o\">=<\/span><span class=\"p\">{<\/span><span class=\"nx\">createUser<\/span><span class=\"p\">}<\/span><span class=\"o\">&gt;<\/span><span class=\"nx\">Add<\/span> <span class=\"nx\">User<\/span><span class=\"o\">&lt;<\/span><span class=\"sr\">\/button<\/span><span class=\"err\">&gt;\n<\/span>    <span class=\"o\">&lt;<\/span><span class=\"sr\">\/div<\/span><span class=\"err\">&gt;\n<\/span>  <span class=\"p\">);<\/span>\n<span class=\"p\">};<\/span>\n\n<span class=\"k\">export<\/span> <span class=\"k\">default<\/span> <span class=\"nx\">App<\/span><span class=\"p\">;<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u062f\u0631 \u0627\u06cc\u0646 \u0645\u062b\u0627\u0644\u060c \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631 \u062f\u0631 \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 React \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc\u200c\u0634\u0648\u062f \u0648 \u0646\u0634\u0627\u0646 \u0645\u06cc\u200c\u062f\u0647\u062f \u06a9\u0647 \u0686\u06af\u0648\u0646\u0647 \u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u062f\u0631 \u0644\u0627\u06cc\u0647\u200c\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641 \u0627\u0633\u0627\u0633\u06cc \u0647\u0633\u062a\u0646\u062f.<\/p>\n<p>\u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc<\/p>\n<h2><span class=\"ez-toc-section\" id=\"CRUD_%D8%AF%D8%B1_%D8%AA%D9%88%D8%B3%D8%B9%D9%87_%D9%85%D9%88%D8%A8%D8%A7%DB%8C%D9%84\"><\/span>\n<p>  CRUD \u062f\u0631 \u062a\u0648\u0633\u0639\u0647 \u0645\u0648\u0628\u0627\u06cc\u0644<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u062a\u0648\u0633\u0639\u0647 \u0645\u0648\u0628\u0627\u06cc\u0644 \u0647\u0645\u0686\u0646\u06cc\u0646 \u0628\u0647 \u0634\u062f\u062a \u0628\u0647 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0645\u062a\u06a9\u06cc \u0627\u0633\u062a\u060c \u0686\u0647 \u062f\u0631 \u062d\u0627\u0644 \u062a\u0648\u0633\u0639\u0647 \u0628\u0631\u0627\u06cc Android\u060c iOS \u06cc\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0686\u0627\u0631\u0686\u0648\u0628\u200c\u0647\u0627\u06cc \u0686\u0646\u062f \u067e\u0644\u062a\u0641\u0631\u0645\u06cc \u0645\u0627\u0646\u0646\u062f Flutter \u06cc\u0627 React Native \u0628\u0627\u0634\u06cc\u062f.  \u0645\u062f\u06cc\u0631\u06cc\u062a \u062f\u0627\u062f\u0647 \u0647\u0627\u060c \u0647\u0645\u06af\u0627\u0645 \u0633\u0627\u0632\u06cc \u0628\u0627 \u0633\u0631\u0648\u0631\u0647\u0627\u06cc \u0631\u0627\u0647 \u062f\u0648\u0631 \u0648 \u0630\u062e\u06cc\u0631\u0647 \u0633\u0627\u0632\u06cc \u0645\u062d\u0644\u06cc \u0647\u0645\u06af\u06cc \u0628\u0647 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u0646\u062f.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%AB%D8%A7%D9%84_%D8%A8%D8%A7_%D8%A7%D9%86%D8%AF%D8%B1%D9%88%DB%8C%D8%AF_%D8%AC%D8%A7%D9%88%D8%A7\"><\/span>\n<p>  \u0645\u062b\u0627\u0644 \u0628\u0627 \u0627\u0646\u062f\u0631\u0648\u06cc\u062f (\u062c\u0627\u0648\u0627)<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u0646\u0645\u0648\u0646\u0647 \u0627\u06cc \u0627\u0632 \u0627\u062c\u0631\u0627\u06cc \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u062f\u0631 \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 \u0627\u0646\u062f\u0631\u0648\u06cc\u062f \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 SQLite \u0622\u0648\u0631\u062f\u0647 \u0634\u062f\u0647 \u0627\u0633\u062a:<\/p>\n<ol>\n<li>\n<strong>\u06a9\u0644\u0627\u0633 \u06a9\u0645\u06a9\u06cc \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647<\/strong>:\n<\/li>\n<\/ol>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight java\"><code><span class=\"kd\">public<\/span> <span class=\"kd\">class<\/span> <span class=\"nc\">DBHelper<\/span> <span class=\"kd\">extends<\/span> <span class=\"nc\">SQLiteOpenHelper<\/span> <span class=\"o\">{<\/span>\n\n    <span class=\"kd\">private<\/span> <span class=\"kd\">static<\/span> <span class=\"kd\">final<\/span> <span class=\"nc\">String<\/span> <span class=\"no\">DATABASE_NAME<\/span> <span class=\"o\">=<\/span> <span class=\"s\">\"users.db\"<\/span><span class=\"o\">;<\/span>\n    <span class=\"kd\">private<\/span> <span class=\"kd\">static<\/span> <span class=\"kd\">final<\/span> <span class=\"kt\">int<\/span> <span class=\"no\">DATABASE_VERSION<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">1<\/span><span class=\"o\">;<\/span>\n    <span class=\"kd\">private<\/span> <span class=\"kd\">static<\/span> <span class=\"kd\">final<\/span> <span class=\"nc\">String<\/span> <span class=\"no\">TABLE_NAME<\/span> <span class=\"o\">=<\/span> <span class=\"s\">\"users\"<\/span><span class=\"o\">;<\/span>\n    <span class=\"kd\">private<\/span> <span class=\"kd\">static<\/span> <span class=\"kd\">final<\/span> <span class=\"nc\">String<\/span> <span class=\"no\">COLUMN_ID<\/span> <span class=\"o\">=<\/span> <span class=\"s\">\"id\"<\/span><span class=\"o\">;<\/span>\n    <span class=\"kd\">private<\/span> <span class=\"kd\">static<\/span> <span class=\"kd\">final<\/span> <span class=\"nc\">String<\/span> <span class=\"no\">COLUMN_NAME<\/span> <span class=\"o\">=<\/span> <span class=\"s\">\"name\"<\/span><span class=\"o\">;<\/span>\n    <span class=\"kd\">private<\/span> <span class=\"kd\">static<\/span> <span class=\"kd\">final<\/span> <span class=\"nc\">String<\/span> <span class=\"no\">COLUMN_EMAIL<\/span> <span class=\"o\">=<\/span> <span class=\"s\">\"email\"<\/span><span class=\"o\">;<\/span>\n\n    <span class=\"kd\">public<\/span> <span class=\"nf\">DBHelper<\/span><span class=\"o\">(<\/span><span class=\"nc\">Context<\/span> <span class=\"n\">context<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n        <span class=\"kd\">super<\/span><span class=\"o\">(<\/span><span class=\"n\">context<\/span><span class=\"o\">,<\/span> <span class=\"no\">DATABASE_NAME<\/span><span class=\"o\">,<\/span> <span class=\"kc\">null<\/span><span class=\"o\">,<\/span> <span class=\"no\">DATABASE_VERSION<\/span><span class=\"o\">);<\/span>\n    <span class=\"o\">}<\/span>\n\n    <span class=\"nd\">@Override<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">onCreate<\/span><span class=\"o\">(<\/span><span class=\"nc\">SQLiteDatabase<\/span> <span class=\"n\">db<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n        <span class=\"nc\">String<\/span> <span class=\"n\">createTable<\/span> <span class=\"o\">=<\/span> <span class=\"s\">\"CREATE TABLE \"<\/span> <span class=\"o\">+<\/span> <span class=\"no\">TABLE_NAME<\/span> <span class=\"o\">+<\/span> <span class=\"s\">\" (\"<\/span> <span class=\"o\">+<\/span>\n                <span class=\"no\">COLUMN_ID<\/span> <span class=\"o\">+<\/span> <span class=\"s\">\" INTEGER PRIMARY KEY AUTOINCREMENT, \"<\/span> <span class=\"o\">+<\/span>\n                <span class=\"no\">COLUMN_NAME<\/span> <span class=\"o\">+<\/span> <span class=\"s\">\" TEXT, \"<\/span> <span class=\"o\">+<\/span>\n                <span class=\"no\">COLUMN_EMAIL<\/span> <span class=\"o\">+<\/span> <span class=\"s\">\" TEXT)\"<\/span><span class=\"o\">;<\/span>\n        <span class=\"n\">db<\/span><span class=\"o\">.<\/span><span class=\"na\">execSQL<\/span><span class=\"o\">(<\/span><span class=\"n\">createTable<\/span><span class=\"o\">);<\/span>\n    <span class=\"o\">}<\/span>\n\n    <span class=\"nd\">@Override<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">onUpgrade<\/span><span class=\"o\">(<\/span><span class=\"nc\">SQLiteDatabase<\/span> <span class=\"n\">db<\/span><span class=\"o\">,<\/span> <span class=\"kt\">int<\/span> <span class=\"n\">oldVersion<\/span><span class=\"o\">,<\/span> <span class=\"kt\">int<\/span> <span class=\"n\">newVersion<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n        <span class=\"n\">db<\/span><span class=\"o\">.<\/span><span class=\"na\">execSQL<\/span><span class=\"o\">(<\/span><span class=\"s\">\"DROP TABLE IF EXISTS \"<\/span> <span class=\"o\">+<\/span> <span class=\"no\">TABLE_NAME<\/span><span class=\"o\">);<\/span>\n        <span class=\"n\">onCreate<\/span><span class=\"o\">(<\/span><span class=\"n\">db<\/span><span class=\"o\">);<\/span>\n    <span class=\"o\">}<\/span>\n\n    <span class=\"c1\">\/\/ Create<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kt\">boolean<\/span> <span class=\"nf\">insertUser<\/span><span class=\"o\">(<\/span><span class=\"nc\">String<\/span> <span class=\"n\">name<\/span><span class=\"o\">,<\/span> <span class=\"nc\">String<\/span> <span class=\"n\">email<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n        <span class=\"nc\">SQLiteDatabase<\/span> <span class=\"n\">db<\/span> <span class=\"o\">=<\/span> <span class=\"k\">this<\/span><span class=\"o\">.<\/span><span class=\"na\">getWritableDatabase<\/span><span class=\"o\">();<\/span>\n        <span class=\"nc\">ContentValues<\/span> <span class=\"n\">contentValues<\/span> <span class=\"o\">=<\/span> <span class=\"k\">new<\/span> <span class=\"nc\">ContentValues<\/span><span class=\"o\">();<\/span>\n        <span class=\"n\">contentValues<\/span><span class=\"o\">.<\/span><span class=\"na\">put<\/span><span class=\"o\">(<\/span><span class=\"no\">COLUMN_NAME<\/span><span class=\"o\">,<\/span> <span class=\"n\">name<\/span><span class=\"o\">);<\/span>\n        <span class=\"n\">contentValues<\/span><span class=\"o\">.<\/span><span class=\"na\">put<\/span><span class=\"o\">(<\/span><span class=\"no\">COLUMN_EMAIL<\/span><span class=\"o\">,<\/span> <span class=\"n\">email<\/span><span class=\"o\">);<\/span>\n        <span class=\"kt\">long<\/span> <span class=\"n\">result<\/span> <span class=\"o\">=<\/span> <span class=\"n\">db<\/span><span class=\"o\">.<\/span><span class=\"na\">insert<\/span><span class=\"o\">(<\/span><span class=\"no\">TABLE_NAME<\/span><span class=\"o\">,<\/span> <span class=\"kc\">null<\/span><span class=\"o\">,<\/span> <span class=\"n\">contentValues<\/span><span class=\"o\">);<\/span>\n        <span class=\"k\">return<\/span> <span class=\"n\">result<\/span> <span class=\"o\">!=<\/span> <span class=\"o\">-<\/span><span class=\"mi\">1<\/span><span class=\"o\">;<\/span>\n    <span class=\"o\">}<\/span>\n\n    <span class=\"c1\">\/\/ Read<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"nc\">Cursor<\/span> <span class=\"nf\">getUser<\/span><span class=\"o\">(<\/span><span class=\"kt\">int<\/span> <span class=\"n\">id<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n        <span class=\"nc\">SQLiteDatabase<\/span> <span class=\"n\">db<\/span> <span class=\"o\">=<\/span> <span class=\"k\">this<\/span><span class=\"o\">.<\/span><span class=\"na\">getReadableDatabase<\/span><span class=\"o\">();<\/span>\n        <span class=\"k\">return<\/span> <span class=\"n\">db<\/span><span class=\"o\">.<\/span><span class=\"na\">query<\/span><span class=\"o\">(<\/span><span class=\"no\">TABLE_NAME<\/span><span class=\"o\">,<\/span> <span class=\"kc\">null<\/span><span class=\"o\">,<\/span> <span class=\"no\">COLUMN_ID<\/span> <span class=\"o\">+<\/span> <span class=\"s\">\"=?\"<\/span><span class=\"o\">,<\/span> <span class=\"k\">new<\/span> <span class=\"nc\">String<\/span><span class=\"o\">[]{<\/span><span class=\"nc\">String<\/span><span class=\"o\">.<\/span><span class=\"na\">valueOf<\/span><span class=\"o\">(<\/span><span class=\"n\">id<\/span><span class=\"o\">)},<\/span> <span class=\"kc\">null<\/span><span class=\"o\">,<\/span> <span class=\"kc\">null<\/span><span class=\"o\">,<\/span> <span class=\"kc\">null<\/span><span class=\"o\">);<\/span>\n    <span class=\"o\">}<\/span>\n\n    <span class=\"c1\">\/\/ Update<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kt\">boolean<\/span> <span class=\"nf\">updateUser<\/span><span class=\"o\">(<\/span><span class=\"kt\">int<\/span> <span class=\"n\">id<\/span><span class=\"o\">,<\/span> <span class=\"nc\">String<\/span> <span class=\"n\">name<\/span><span class=\"o\">,<\/span> <span class=\"nc\">String<\/span> <span class=\"n\">email<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n        <span class=\"nc\">SQLiteDatabase<\/span> <span class=\"n\">db<\/span> <span class=\"o\">=<\/span> <span class=\"k\">this<\/span><span class=\"o\">.<\/span><span class=\"na\">getWritableDatabase<\/span><span class=\"o\">();<\/span>\n        <span class=\"nc\">ContentValues<\/span> <span class=\"n\">contentValues<\/span> <span class=\"o\">=<\/span> <span class=\"k\">new<\/span> <span class=\"nc\">ContentValues<\/span><span class=\"o\">();<\/span>\n        <span class=\"n\">contentValues<\/span><span class=\"o\">.<\/span><span class=\"na\">put<\/span><span class=\"o\">(<\/span><span class=\"no\">COLUMN_NAME<\/span><span class=\"o\">,<\/span> <span class=\"n\">name<\/span><span class=\"o\">);<\/span>\n        <span class=\"n\">contentValues<\/span><span class=\"o\">.<\/span><span class=\"na\">put<\/span><span class=\"o\">(<\/span><span class=\"no\">COLUMN_EMAIL<\/span><span class=\"o\">,<\/span> <span class=\"n\">email<\/span><span class=\"o\">);<\/span>\n        <span class=\"kt\">int<\/span> <span class=\"n\">result<\/span> <span class=\"o\">=<\/span> <span class=\"n\">db<\/span><span class=\"o\">.<\/span><span class=\"na\">update<\/span><span class=\"o\">(<\/span><span class=\"no\">TABLE_NAME<\/span><span class=\"o\">,<\/span> <span class=\"n\">contentValues<\/span><span class=\"o\">,<\/span> <span class=\"no\">COLUMN_ID<\/span> <span class=\"o\">+<\/span> <span class=\"s\">\"=?\"<\/span><span class=\"o\">,<\/span> <span class=\"k\">new<\/span> <span class=\"nc\">String<\/span><span class=\"o\">[]{<\/span><span class=\"nc\">String<\/span><span class=\"o\">.<\/span><span class=\"na\">valueOf<\/span><span class=\"o\">(<\/span><span class=\"n\">id<\/span><span class=\"o\">)});<\/span>\n        <span class=\"k\">return<\/span> <span class=\"n\">result<\/span> <span class=\"o\">&gt;<\/span> <span class=\"mi\">0<\/span><span class=\"o\">;<\/span>\n    <span class=\"o\">}<\/span>\n\n    <span class=\"c1\">\/\/ Delete<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kt\">boolean<\/span> <span class=\"nf\">deleteUser<\/span><span class=\"o\">(<\/span><span class=\"kt\">int<\/span> <span class=\"n\">id<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n        <span class=\"nc\">SQLiteDatabase<\/span> <span class=\"n\">db<\/span> <span class=\"o\">=<\/span> <span class=\"k\">this<\/span><span class=\"o\">.<\/span><span class=\"na\">getWritableDatabase<\/span><span class=\"o\">();<\/span>\n        <span class=\"kt\">int<\/span> <span class=\"n\">result<\/span> <span class=\"o\">=<\/span> <span class=\"n\">db<\/span><span class=\"o\">.<\/span><span class=\"na\">delete<\/span><span class=\"o\">(<\/span><span class=\"no\">TABLE_NAME<\/span><span class=\"o\">,<\/span> <span class=\"no\">COLUMN_ID<\/span> <span class=\"o\">+<\/span> <span class=\"s\">\"=?\"<\/span><span class=\"o\">,<\/span> <span class=\"k\">new<\/span> <span class=\"nc\">String<\/span><span class=\"o\">[]{<\/span><span class=\"nc\">String<\/span><span class=\"o\">.<\/span><span class=\"na\">valueOf<\/span><span class=\"o\">(<\/span><span class=\"n\">id<\/span><span class=\"o\">)});<\/span>\n        <span class=\"k\">return<\/span> <span class=\"n\">result<\/span> <span class=\"o\">&gt;<\/span> <span class=\"mi\">0<\/span><span class=\"o\">;<\/span>\n    <span class=\"o\">}<\/span>\n<span class=\"o\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<ol>\n<li>\n<strong>\u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 DBHelper \u062f\u0631 \u06cc\u06a9 \u0641\u0639\u0627\u0644\u06cc\u062a<\/strong>:\n<\/li>\n<\/ol>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight java\"><code><span class=\"kd\">public<\/span> <span class=\"kd\">class<\/span> <span class=\"nc\">MainActivity<\/span> <span class=\"kd\">extends<\/span> <span class=\"nc\">AppCompatActivity<\/span> <span class=\"o\">{<\/span>\n\n    <span class=\"nc\">DBHelper<\/span> <span class=\"n\">dbHelper<\/span><span class=\"o\">;<\/span>\n    <span class=\"nc\">EditText<\/span> <span class=\"n\">editName<\/span><span class=\"o\">,<\/span> <span class=\"n\">editEmail<\/span><span class=\"o\">;<\/span>\n    <span class=\"nc\">Button<\/span> <span class=\"n\">btnAdd<\/span><span class=\"o\">,<\/span> <span class=\"n\">btnView<\/span><span class=\"o\">,<\/span> <span class=\"n\">btnUpdate<\/span><span class=\"o\">,<\/span> <span class=\"n\">btnDelete<\/span><span class=\"o\">;<\/span>\n    <span class=\"nc\">TextView<\/span> <span class=\"n\">textView<\/span><span class=\"o\">;<\/span>\n\n    <span class=\"nd\">@Override<\/span>\n    <span class=\"kd\">protected<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">onCreate<\/span><span class=\"o\">(<\/span><span class=\"nc\">Bundle<\/span> <span class=\"n\">savedInstanceState<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n        <span class=\"kd\">super<\/span><span class=\"o\">.<\/span><span class=\"na\">onCreate<\/span><span class=\"o\">(<\/span><span class=\"n\">savedInstanceState<\/span><span class=\"o\">);<\/span>\n        <span class=\"n\">setContentView<\/span><span class=\"o\">(<\/span><span class=\"no\">R<\/span><span class=\"o\">.<\/span><span class=\"na\">layout<\/span><span class=\"o\">.<\/span><span class=\"na\">activity_main<\/span><span class=\"o\">);<\/span>\n\n        <span class=\"n\">dbHelper<\/span> <span class=\"o\">=<\/span> <span class=\"k\">new<\/span> <span class=\"nc\">DBHelper<\/span><span class=\"o\">(<\/span><span class=\"k\">this<\/span><span class=\"o\">);<\/span>\n        <span class=\"n\">editName<\/span> <span class=\"o\">=<\/span> <span class=\"n\">findViewById<\/span><span class=\"o\">(<\/span><span class=\"no\">R<\/span><span class=\"o\">.<\/span><span class=\"na\">id<\/span><span class=\"o\">.<\/span><span class=\"na\">editName<\/span><span class=\"o\">);<\/span>\n        <span class=\"n\">editEmail<\/span> <span class=\"o\">=<\/span> <span class=\"n\">findViewById<\/span><span class=\"o\">(<\/span><span class=\"no\">R<\/span><span class=\"o\">.<\/span><span class=\"na\">id<\/span><span class=\"o\">.<\/span><span class=\"na\">editEmail<\/span><span class=\"o\">);<\/span>\n        <span class=\"n\">btnAdd<\/span> <span class=\"o\">=<\/span> <span class=\"n\">findViewById<\/span><span class=\"o\">(<\/span><span class=\"no\">R<\/span><span class=\"o\">.<\/span><span class=\"na\">id<\/span><span class=\"o\">.<\/span><span class=\"na\">btnAdd<\/span><span class=\"o\">);<\/span>\n        <span class=\"n\">btnView<\/span> <span class=\"o\">=<\/span> <span class=\"n\">findViewById<\/span><span class=\"o\">(<\/span><span class=\"no\">R<\/span><span class=\"o\">.<\/span><span class=\"na\">id<\/span><span class=\"o\">.<\/span><span class=\"na\">btnView<\/span><span class=\"o\">);<\/span>\n        <span class=\"n\">btnUpdate<\/span> <span class=\"o\">=<\/span> <span class=\"n\">findViewById<\/span><span class=\"o\">(<\/span><span class=\"no\">R<\/span><span class=\"o\">.<\/span><span class=\"na\">id<\/span><span class=\"o\">.<\/span><span class=\"na\">btnUpdate<\/span><span class=\"o\">);<\/span>\n        <span class=\"n\">btnDelete<\/span> <span class=\"o\">=<\/span> <span class=\"n\">findViewById<\/span><span class=\"o\">(<\/span><span class=\"no\">R<\/span><span class=\"o\">.<\/span><span class=\"na\">id<\/span><span class=\"o\">.<\/span><span class=\"na\">btnDelete<\/span><span class=\"o\">);<\/span>\n        <span class=\"n\">textView<\/span> <span class=\"o\">=<\/span> <span class=\"n\">findViewById<\/span><span class=\"o\">(<\/span><span class=\"no\">R<\/span><span class=\"o\">.<\/span><span class=\"na\">id<\/span><span class=\"o\">.<\/span><span class=\"na\">textView<\/span><span class=\"o\">);<\/span>\n\n        <span class=\"c1\">\/\/ Add User<\/span>\n        <span class=\"n\">btnAdd<\/span><span class=\"o\">.<\/span><span class=\"na\">setOnClickListener<\/span><span class=\"o\">(<\/span><span class=\"k\">new<\/span> <span class=\"nc\">View<\/span><span class=\"o\">.<\/span><span class=\"na\">OnClickListener<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n            <span class=\"nd\">@Override<\/span>\n            <span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">onClick<\/span><span class=\"o\">(<\/span><span class=\"nc\">View<\/span> <span class=\"n\">view<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n                <span class=\"nc\">String<\/span> <span class=\"n\">name<\/span> <span class=\"o\">=<\/span> <span class=\"n\">editName<\/span><span class=\"o\">.<\/span><span class=\"na\">getText<\/span><span class=\"o\">().<\/span><span class=\"na\">toString<\/span><span class=\"o\">();<\/span>\n                <span class=\"nc\">String<\/span> <span class=\"n\">email<\/span> <span class=\"o\">=<\/span> <span class=\"n\">editEmail<\/span><span class=\"o\">.<\/span><span class=\"na\">getText<\/span><span class=\"o\">().<\/span><span class=\"na\">toString<\/span><span class=\"o\">();<\/span>\n                <span class=\"kt\">boolean<\/span> <span class=\"n\">inserted<\/span> <span class=\"o\">=<\/span> <span class=\"n\">dbHelper<\/span><span class=\"o\">.<\/span><span class=\"na\">insertUser<\/span><span class=\"o\">(<\/span><span class=\"n\">name<\/span><span class=\"o\">,<\/span> <span class=\"n\">email<\/span><span class=\"o\">);<\/span>\n                <span class=\"k\">if<\/span> <span class=\"o\">(<\/span><span class=\"n\">inserted<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n                    <span class=\"nc\">Toast<\/span><span class=\"o\">.<\/span><span class=\"na\">makeText<\/span><span class=\"o\">(<\/span><span class=\"nc\">MainActivity<\/span><span class=\"o\">.<\/span><span class=\"na\">this<\/span><span class=\"o\">,<\/span> <span class=\"s\">\"User Added\"<\/span><span class=\"o\">,<\/span> <span class=\"nc\">Toast<\/span><span class=\"o\">.<\/span><span class=\"na\">LENGTH_SHORT<\/span><span class=\"o\">).<\/span><span class=\"na\">show<\/span><span class=\"o\">();<\/span>\n                <span class=\"o\">}<\/span> <span class=\"k\">else<\/span> <span class=\"o\">{<\/span>\n                    <span class=\"nc\">Toast<\/span><span class=\"o\">.<\/span><span class=\"na\">makeText<\/span><span class=\"o\">(<\/span><span class=\"nc\">MainActivity<\/span><span class=\"o\">.<\/span><span class=\"na\">this<\/span><span class=\"o\">,<\/span> <span class=\"s\">\"Insertion Failed\"<\/span><span class=\"o\">,<\/span> <span class=\"nc\">Toast<\/span><span class=\"o\">.<\/span><span class=\"na\">LENGTH_SHORT<\/span><span class=\"o\">).<\/span><span class=\"na\">show<\/span><span class=\"o\">();<\/span>\n                <span class=\"o\">}<\/span>\n            <span class=\"o\">}<\/span>\n        <span class=\"o\">});<\/span>\n\n        <span class=\"c1\">\/\/ View User<\/span>\n        <span class=\"n\">btnView<\/span><span class=\"o\">.<\/span><span class=\"na\">setOnClickListener<\/span><span class=\"o\">(<\/span><span class=\"k\">new<\/span> <span class=\"nc\">View<\/span><span class=\"o\">.<\/span><span class=\"na\">OnClickListener<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n            <span class=\"nd\">@Override<\/span>\n            <span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">onClick<\/span><span class=\"o\">(<\/span><span class=\"nc\">View<\/span> <span class=\"n\">view<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n                <span class=\"kt\">int<\/span> <span class=\"n\">id<\/span> <span class=\"o\">=<\/span> <span class=\"nc\">Integer<\/span><span class=\"o\">.<\/span><span class=\"na\">parseInt<\/span><span class=\"o\">(<\/span><span class=\"n\">editName<\/span><span class=\"o\">.<\/span><span class=\"na\">getText<\/span><span class=\"o\">().<\/span><span class=\"na\">toString<\/span><span class=\"o\">());<\/span> <span class=\"c1\">\/\/ For simplicity, using name input for ID<\/span>\n                <span class=\"nc\">Cursor<\/span> <span class=\"n\">cursor<\/span> <span class=\"o\">=<\/span> <span class=\"n\">dbHelper<\/span><span class=\"o\">.<\/span><span class=\"na\">getUser<\/span><span class=\"o\">(<\/span><span class=\"n\">id<\/span><span class=\"o\">);<\/span>\n                <span class=\"k\">if<\/span> <span class=\"o\">(<\/span><span class=\"n\">cursor<\/span><span class=\"o\">.<\/span><span class=\"na\">moveToFirst<\/span><span class=\"o\">())<\/span> <span class=\"o\">{<\/span>\n                    <span class=\"n\">textView<\/span><span class=\"o\">.<\/span><span class=\"na\">setText<\/span><span class=\"o\">(<\/span><span class=\"s\">\"ID: \"<\/span> <span class=\"o\">+<\/span> <span class=\"n\">cursor<\/span><span class=\"o\">.<\/span><span class=\"na\">getInt<\/span><span class=\"o\">(<\/span><span class=\"n\">cursor<\/span><span class=\"o\">.<\/span><span class=\"na\">getColumnIndexOrThrow<\/span><span class=\"o\">(<\/span><span class=\"s\">\"id\"<\/span><span class=\"o\">))<\/span> <span class=\"o\">+<\/span>\n                            <span class=\"s\">\"\\nName: \"<\/span> <span class=\"o\">+<\/span> <span class=\"n\">cursor<\/span><span class=\"o\">.<\/span><span class=\"na\">getString<\/span><span class=\"o\">(<\/span><span class=\"n\">cursor<\/span><span class=\"o\">.<\/span><span class=\"na\">getColumnIndexOrThrow<\/span><span class=\"o\">(<\/span><span class=\"s\">\"name\"<\/span><span class=\"o\">))<\/span> <span class=\"o\">+<\/span>\n                            <span class=\"s\">\"\\nEmail: \"<\/span> <span class=\"o\">+<\/span> <span class=\"n\">cursor<\/span><span class=\"o\">.<\/span><span class=\"na\">getString<\/span><span class=\"o\">(<\/span><span class=\"n\">cursor<\/span><span class=\"o\">.<\/span><span class=\"na\">getColumnIndexOrThrow<\/span><span class=\"o\">(<\/span><span class=\"s\">\"email\"<\/span><span class=\"o\">)));<\/span>\n                <span class=\"o\">}<\/span> <span class=\"k\">else<\/span> <span class=\"o\">{<\/span>\n                    <span class=\"nc\">Toast<\/span><span class=\"o\">.<\/span><span class=\"na\">makeText<\/span><span class=\"o\">(<\/span><span class=\"nc\">MainActivity<\/span><span class=\"o\">.<\/span><span class=\"na\">this<\/span><span class=\"o\">,<\/span> <span class=\"s\">\"User Not Found\"<\/span><span class=\"o\">,<\/span> <span class=\"nc\">Toast<\/span><span class=\"o\">.<\/span><span class=\"na\">LENGTH_SHORT<\/span><span class=\"o\">).<\/span><span class=\"na\">show<\/span><span class=\"o\">();<\/span>\n                <span class=\"o\">}<\/span>\n            <span class=\"o\">}<\/span>\n        <span class=\"o\">});<\/span>\n\n        <span class=\"c1\">\/\/ Update User<\/span>\n        <span class=\"n\">btnUpdate<\/span><span class=\"o\">.<\/span><span class=\"na\">setOnClickListener<\/span><span class=\"o\">(<\/span><span class=\"k\">new<\/span> <span class=\"nc\">View<\/span><span class=\"o\">.<\/span><span class=\"na\">OnClickListener<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n            <span class=\"nd\">@Override<\/span>\n            <span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">onClick<\/span><span class=\"o\">(<\/span><span class=\"nc\">View<\/span> <span class=\"n\">view<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n                <span class=\"kt\">int<\/span> <span class=\"n\">id<\/span> <span class=\"o\">=<\/span> <span class=\"nc\">Integer<\/span><span class=\"o\">.<\/span><span class=\"na\">parseInt<\/span><span class=\"o\">(<\/span><span class=\"n\">editName<\/span><span class=\"o\">.<\/span><span class=\"na\">getText<\/span><span class=\"o\">().<\/span><span class=\"na\">toString<\/span><span class=\"o\">());<\/span> <span class=\"c1\">\/\/ For simplicity, using name input for ID<\/span>\n                <span class=\"nc\">String<\/span> <span class=\"n\">newName<\/span> <span class=\"o\">=<\/span> <span class=\"n\">editEmail<\/span><span class=\"o\">.<\/span><span class=\"na\">getText<\/span><span class=\"o\">().<\/span><span class=\"na\">toString<\/span><span class=\"o\">();<\/span>\n                <span class=\"nc\">String<\/span> <span class=\"n\">newEmail<\/span> <span class=\"o\">=<\/span> <span class=\"s\">\"newemail@example.com\"<\/span><span class=\"o\">;<\/span> <span class=\"c1\">\/\/ Dummy new email for update<\/span>\n                <span class=\"kt\">boolean<\/span> <span class=\"n\">updated<\/span> <span class=\"o\">=<\/span> <span class=\"n\">dbHelper<\/span><span class=\"o\">.<\/span><span class=\"na\">updateUser<\/span><span class=\"o\">(<\/span><span class=\"n\">id<\/span><span class=\"o\">,<\/span> <span class=\"n\">newName<\/span><span class=\"o\">,<\/span> <span class=\"n\">newEmail<\/span><span class=\"o\">);<\/span>\n                <span class=\"k\">if<\/span> <span class=\"o\">(<\/span><span class=\"n\">updated<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n                    <span class=\"nc\">Toast<\/span><span class=\"o\">.<\/span><span class=\"na\">makeText<\/span><span class=\"o\">(<\/span><span class=\"nc\">MainActivity<\/span><span class=\"o\">.<\/span><span class=\"na\">this<\/span><span class=\"o\">,<\/span> <span class=\"s\">\"User Updated\"<\/span><span class=\"o\">,<\/span> <span class=\"nc\">Toast<\/span><span class=\"o\">.<\/span><span class=\"na\">LENGTH_SHORT<\/span><span class=\"o\">).<\/span><span class=\"na\">show<\/span><span class=\"o\">();<\/span>\n                <span class=\"o\">}<\/span> <span class=\"k\">else<\/span> <span class=\"o\">{<\/span>\n                    <span class=\"nc\">Toast<\/span><span class=\"o\">.<\/span><span class=\"na\">makeText<\/span><span class=\"o\">(<\/span><span class=\"nc\">MainActivity<\/span><span class=\"o\">.<\/span><span class=\"na\">this<\/span><span class=\"o\">,<\/span> <span class=\"s\">\"Update Failed\"<\/span><span class=\"o\">,<\/span> <span class=\"nc\">Toast<\/span><span class=\"o\">.<\/span><span class=\"na\">LENGTH_SHORT<\/span><span class=\"o\">).<\/span><span class=\"na\">show<\/span><span class=\"o\">();<\/span>\n                <span class=\"o\">}<\/span>\n            <span class=\"o\">}<\/span>\n        <span class=\"o\">});<\/span>\n\n        <span class=\"c1\">\/\/ Delete User<\/span>\n        <span class=\"n\">btnDelete<\/span><span class=\"o\">.<\/span><span class=\"na\">setOnClickListener<\/span><span class=\"o\">(<\/span><span class=\"k\">new<\/span> <span class=\"nc\">View<\/span><span class=\"o\">.<\/span><span class=\"na\">OnClickListener<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n            <span class=\"nd\">@Override<\/span>\n            <span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">onClick<\/span><span class=\"o\">(<\/span><span class=\"nc\">View<\/span> <span class=\"n\">view<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n                <span class=\"kt\">int<\/span> <span class=\"n\">id<\/span> <span class=\"o\">=<\/span> <span class=\"nc\">Integer<\/span><span class=\"o\">.<\/span><span class=\"na\">parseInt<\/span><span class=\"o\">(<\/span><span class=\"n\">editName<\/span><span class=\"o\">.<\/span><span class=\"na\">getText<\/span><span class=\"o\">().<\/span><span class=\"na\">toString<\/span><span class=\"o\">());<\/span> <span class=\"c1\">\/\/ For simplicity, using name input for ID<\/span>\n                <span class=\"kt\">boolean<\/span> <span class=\"n\">deleted<\/span> <span class=\"o\">=<\/span> <span class=\"n\">dbHelper<\/span><span class=\"o\">.<\/span><span class=\"na\">deleteUser<\/span><span class=\"o\">(<\/span><span class=\"n\">id<\/span><span class=\"o\">);<\/span>\n                <span class=\"k\">if<\/span> <span class=\"o\">(<\/span><span class=\"n\">deleted<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n                    <span class=\"nc\">Toast<\/span><span class=\"o\">.<\/span><span class=\"na\">makeText<\/span><span class=\"o\">(<\/span><span class=\"nc\">MainActivity<\/span><span class=\"o\">.<\/span><span class=\"na\">this<\/span><span class=\"o\">,<\/span> <span class=\"s\">\"User Deleted\"<\/span><span class=\"o\">,<\/span> <span class=\"nc\">Toast<\/span><span class=\"o\">.<\/span><span class=\"na\">LENGTH_SHORT<\/span><span class=\"o\">).<\/span><span class=\"na\">show<\/span><span class=\"o\">();<\/span>\n                <span class=\"o\">}<\/span> <span class=\"k\">else<\/span> <span class=\"o\">{<\/span>\n                    <span class=\"nc\">Toast<\/span><span class=\"o\">.<\/span><span class=\"na\">makeText<\/span><span class=\"o\">(<\/span><span class=\"nc\">MainActivity<\/span><span class=\"o\">.<\/span><span class=\"na\">this<\/span><span class=\"o\">,<\/span> <span class=\"s\">\"Deletion Failed\"<\/span><span class=\"o\">,<\/span> <span class=\"nc\">Toast<\/span><span class=\"o\">.<\/span><span class=\"na\">LENGTH_SHORT<\/span><span class=\"o\">).<\/span><span class=\"na\">show<\/span><span class=\"o\">();<\/span>\n                <span class=\"o\">}<\/span>\n            <span class=\"o\">}<\/span>\n        <span class=\"o\">});<\/span>\n    <span class=\"o\">}<\/span>\n<span class=\"o\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%AB%D8%A7%D9%84_%D8%A8%D8%A7_%D9%81%D9%84%D8%A7%D8%AA%D8%B1\"><\/span>\n<p>  \u0645\u062b\u0627\u0644 \u0628\u0627 \u0641\u0644\u0627\u062a\u0631<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u0645\u062b\u0627\u0644\u06cc \u0627\u0632 \u0646\u062d\u0648\u0647 \u0627\u062c\u0631\u0627\u06cc \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u062f\u0631 \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 Flutter \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 <code>sqflite<\/code> \u0628\u0633\u062a\u0647 \u0628\u0631\u0627\u06cc SQLite:<\/p>\n<ol>\n<li>\n<strong>\u0631\u0627\u0647\u0646\u0645\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647<\/strong>:\n<\/li>\n<\/ol>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight dart\"><code><span class=\"kn\">import<\/span> <span class=\"s\">'package:sqflite\/sqflite.dart'<\/span><span class=\"o\">;<\/span>\n<span class=\"kn\">import<\/span> <span class=\"s\">'package:path\/path.dart'<\/span><span class=\"o\">;<\/span>\n\n<span class=\"kd\">class<\/span> <span class=\"nc\">DatabaseHelper<\/span> <span class=\"p\">{<\/span>\n  <span class=\"kd\">static<\/span> <span class=\"kd\">final<\/span> <span class=\"n\">_databaseName<\/span> <span class=\"o\">=<\/span> <span class=\"s\">\"users.db\"<\/span><span class=\"p\">;<\/span>\n  <span class=\"kd\">static<\/span> <span class=\"kd\">final<\/span> <span class=\"n\">_databaseVersion<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">1<\/span><span class=\"p\">;<\/span>\n\n  <span class=\"kd\">static<\/span> <span class=\"kd\">final<\/span> <span class=\"n\">table<\/span> <span class=\"o\">=<\/span> <span class=\"s\">'users'<\/span><span class=\"p\">;<\/span>\n\n  <span class=\"kd\">static<\/span> <span class=\"kd\">final<\/span> <span class=\"n\">columnId<\/span> <span class=\"o\">=<\/span> <span class=\"s\">'id'<\/span><span class=\"p\">;<\/span>\n  <span class=\"kd\">static<\/span> <span class=\"kd\">final<\/span> <span class=\"n\">columnName<\/span> <span class=\"o\">=<\/span> <span class=\"s\">'name'<\/span><span class=\"p\">;<\/span>\n  <span class=\"kd\">static<\/span> <span class=\"kd\">final<\/span> <span class=\"n\">columnEmail<\/span> <span class=\"o\">=<\/span> <span class=\"s\">'email'<\/span><span class=\"p\">;<\/span>\n\n  <span class=\"n\">DatabaseHelper<\/span><span class=\"o\">.<\/span><span class=\"na\">_privateConstructor<\/span><span class=\"p\">();<\/span>\n  <span class=\"kd\">static<\/span> <span class=\"kd\">final<\/span> <span class=\"n\">DatabaseHelper<\/span> <span class=\"n\">instance<\/span> <span class=\"o\">=<\/span> <span class=\"n\">DatabaseHelper<\/span><span class=\"o\">.<\/span><span class=\"na\">_privateConstructor<\/span><span class=\"p\">();<\/span>\n\n  <span class=\"kd\">static<\/span> <span class=\"n\">Database<\/span><span class=\"o\">?<\/span> <span class=\"n\">_database<\/span><span class=\"p\">;<\/span>\n\n  <span class=\"n\">Future<\/span><span class=\"p\">&lt;<\/span><span class=\"n\">Database<\/span><span class=\"o\">?<\/span><span class=\"p\">&gt;<\/span> <span class=\"kd\">get<\/span> <span class=\"n\">database<\/span> <span class=\"kd\">async<\/span> <span class=\"p\">{<\/span>\n    <span class=\"k\">if<\/span> <span class=\"p\">(<\/span><span class=\"n\">_database<\/span> <span class=\"o\">!=<\/span> <span class=\"kc\">null<\/span><span class=\"p\">)<\/span> <span class=\"k\">return<\/span> <span class=\"n\">_database<\/span><span class=\"p\">;<\/span>\n    <span class=\"n\">_database<\/span> <span class=\"o\">=<\/span> <span class=\"k\">await<\/span> <span class=\"n\">_initDatabase<\/span><span class=\"p\">();<\/span>\n    <span class=\"k\">return<\/span> <span class=\"n\">_database<\/span><span class=\"p\">;<\/span>\n  <span class=\"p\">}<\/span>\n\n  <span class=\"n\">_initDatabase<\/span><span class=\"p\">()<\/span> <span class=\"kd\">async<\/span> <span class=\"p\">{<\/span>\n    <span class=\"kt\">String<\/span> <span class=\"n\">path<\/span> <span class=\"o\">=<\/span> <span class=\"n\">join<\/span><span class=\"p\">(<\/span><span class=\"k\">await<\/span> <span class=\"n\">getDatabasesPath<\/span><span class=\"p\">(),<\/span> <span class=\"n\">_databaseName<\/span><span class=\"p\">);<\/span>\n    <span class=\"k\">return<\/span> <span class=\"k\">await<\/span> <span class=\"n\">openDatabase<\/span><span class=\"p\">(<\/span><span class=\"n\">path<\/span><span class=\"p\">,<\/span>\n        <span class=\"nl\">version:<\/span> <span class=\"n\">_databaseVersion<\/span><span class=\"p\">,<\/span> <span class=\"nl\">onCreate:<\/span> <span class=\"n\">_onCreate<\/span><span class=\"p\">);<\/span>\n  <span class=\"p\">}<\/span>\n\n  <span class=\"n\">Future<\/span> <span class=\"n\">_onCreate<\/span><span class=\"p\">(<\/span><span class=\"n\">Database<\/span> <span class=\"n\">db<\/span><span class=\"p\">,<\/span> <span class=\"kt\">int<\/span> <span class=\"n\">version<\/span><span class=\"p\">)<\/span> <span class=\"kd\">async<\/span> <span class=\"p\">{<\/span>\n    <span class=\"k\">await<\/span> <span class=\"n\">db<\/span><span class=\"o\">.<\/span><span class=\"na\">execute<\/span><span class=\"p\">(<\/span><span class=\"s\">'''\n          CREATE TABLE <\/span><span class=\"si\">$table<\/span><span class=\"s\"> (\n            <\/span><span class=\"si\">$columnId<\/span><span class=\"s\"> INTEGER PRIMARY KEY AUTOINCREMENT,\n            <\/span><span class=\"si\">$columnName<\/span><span class=\"s\"> TEXT NOT NULL,\n            <\/span><span class=\"si\">$columnEmail<\/span><span class=\"s\"> TEXT NOT NULL\n          )\n          '''<\/span><span class=\"p\">);<\/span>\n  <span class=\"p\">}<\/span>\n\n  <span class=\"c1\">\/\/ Create<\/span>\n  <span class=\"n\">Future<\/span><span class=\"p\">&lt;<\/span><span class=\"kt\">int<\/span><span class=\"p\">&gt;<\/span> <span class=\"n\">insert<\/span><span class=\"p\">(<\/span><span class=\"kt\">Map<\/span><span class=\"p\">&lt;<\/span><span class=\"kt\">String<\/span><span class=\"p\">,<\/span> <span class=\"kd\">dynamic<\/span><span class=\"p\">&gt;<\/span> <span class=\"n\">row<\/span><span class=\"p\">)<\/span> <span class=\"kd\">async<\/span> <span class=\"p\">{<\/span>\n    <span class=\"n\">Database<\/span><span class=\"o\">?<\/span> <span class=\"n\">db<\/span> <span class=\"o\">=<\/span> <span class=\"k\">await<\/span> <span class=\"n\">instance<\/span><span class=\"o\">.<\/span><span class=\"na\">database<\/span><span class=\"p\">;<\/span>\n    <span class=\"k\">return<\/span> <span class=\"k\">await<\/span> <span class=\"n\">db<\/span><span class=\"o\">!.<\/span><span class=\"na\">insert<\/span><span class=\"p\">(<\/span><span class=\"n\">table<\/span><span class=\"p\">,<\/span> <span class=\"n\">row<\/span><span class=\"p\">);<\/span>\n  <span class=\"p\">}<\/span>\n\n  <span class=\"c1\">\/\/ Read<\/span>\n  <span class=\"n\">Future<\/span><span class=\"p\">&lt;<\/span><span class=\"kt\">List<\/span><span class=\"p\">&lt;<\/span><span class=\"kt\">Map<\/span><span class=\"p\">&lt;<\/span><span class=\"kt\">String<\/span><span class=\"p\">,<\/span> <span class=\"kd\">dynamic<\/span><span class=\"p\">&gt;&gt;&gt;<\/span> <span class=\"n\">queryAllRows<\/span><span class=\"p\">()<\/span> <span class=\"kd\">async<\/span> <span class=\"p\">{<\/span>\n    <span class=\"n\">Database<\/span><span class=\"o\">?<\/span> <span class=\"n\">db<\/span> <span class=\"o\">=<\/span> <span class=\"k\">await<\/span> <span class=\"n\">instance<\/span><span class=\"o\">.<\/span><span class=\"na\">database<\/span><span class=\"p\">;<\/span>\n    <span class=\"k\">return<\/span> <span class=\"k\">await<\/span> <span class=\"n\">db<\/span><span class=\"o\">!.<\/span><span class=\"na\">query<\/span><span class=\"p\">(<\/span><span class=\"n\">table<\/span><span class=\"p\">);<\/span>\n  <span class=\"p\">}<\/span>\n\n  <span class=\"c1\">\/\/ Update<\/span>\n  <span class=\"n\">Future<\/span><span class=\"p\">&lt;<\/span><span class=\"kt\">int<\/span><span class=\"p\">&gt;<\/span> <span class=\"n\">update<\/span><span class=\"p\">(<\/span><span class=\"kt\">Map<\/span><span class=\"p\">&lt;<\/span><span class=\"kt\">String<\/span><span class=\"p\">,<\/span> <span class=\"kd\">dynamic<\/span><span class=\"p\">&gt;<\/span> <span class=\"n\">row<\/span><span class=\"p\">)<\/span> <span class=\"kd\">async<\/span> <span class=\"p\">{<\/span>\n    <span class=\"n\">Database<\/span><span class=\"o\">?<\/span> <span class=\"n\">db<\/span> <span class=\"o\">=<\/span> <span class=\"k\">await<\/span> <span class=\"n\">instance<\/span><span class=\"o\">.<\/span><span class=\"na\">database<\/span><span class=\"p\">;<\/span>\n    <span class=\"kt\">int<\/span> <span class=\"n\">id<\/span> <span class=\"o\">=<\/span> <span class=\"n\">row<\/span><span class=\"p\">[<\/span><span class=\"n\">columnId<\/span><span class=\"p\">];<\/span>\n    <span class=\"k\">return<\/span> <span class=\"k\">await<\/span> <span class=\"n\">db<\/span><span class=\"o\">!.<\/span><span class=\"na\">update<\/span><span class=\"p\">(<\/span><span class=\"n\">table<\/span><span class=\"p\">,<\/span> <span class=\"n\">row<\/span><span class=\"p\">,<\/span> <span class=\"nl\">where:<\/span> <span class=\"s\">'<\/span><span class=\"si\">$columnId<\/span><span class=\"s\"> = ?'<\/span><span class=\"p\">,<\/span> <span class=\"nl\">whereArgs:<\/span> <span class=\"p\">[<\/span><span class=\"n\">id<\/span><span class=\"p\">]);<\/span>\n  <span class=\"p\">}<\/span>\n\n  <span class=\"c1\">\/\/ Delete<\/span>\n  <span class=\"n\">Future<\/span><span class=\"p\">&lt;<\/span><span class=\"kt\">int<\/span><span class=\"p\">&gt;<\/span> <span class=\"n\">delete<\/span><span class=\"p\">(<\/span><span class=\"kt\">int<\/span> <span class=\"n\">id<\/span><span class=\"p\">)<\/span> <span class=\"kd\">async<\/span> <span class=\"p\">{<\/span>\n    <span class=\"n\">Database<\/span><span class=\"o\">?<\/span> <span class=\"n\">db<\/span> <span class=\"o\">=<\/span> <span class=\"k\">await<\/span> <span class=\"n\">instance<\/span><span class=\"o\">.<\/span><span class=\"na\">database<\/span><span class=\"p\">;<\/span>\n    <span class=\"k\">return<\/span> <span class=\"k\">await<\/span> <span class=\"n\">db<\/span><span class=\"o\">!.<\/span><span class=\"na\">delete<\/span><span class=\"p\">(<\/span><span class=\"n\">table<\/span><span class=\"p\">,<\/span> <span class=\"nl\">where:<\/span> <span class=\"s\">'<\/span><span class=\"si\">$columnId<\/span><span class=\"s\"> = ?'<\/span><span class=\"p\">,<\/span> <span class=\"nl\">whereArgs:<\/span> <span class=\"p\">[<\/span><span class=\"n\">id<\/span><span class=\"p\">]);<\/span>\n  <span class=\"p\">}<\/span>\n<span class=\"p\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<ol>\n<li>\n<strong>\u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Database Helper \u062f\u0631 Flutter Widget<\/strong>:\n<\/li>\n<\/ol>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight dart\"><code><span class=\"kn\">import<\/span> <span class=\"s\">'package:flutter\/material.dart'<\/span><span class=\"o\">;<\/span>\n<span class=\"kn\">import<\/span> <span class=\"s\">'database_helper.dart'<\/span><span class=\"o\">;<\/span>\n\n<span class=\"kt\">void<\/span> <span class=\"nf\">main<\/span><span class=\"p\">()<\/span> <span class=\"o\">=<\/span><span class=\"p\">&gt;<\/span> <span class=\"n\">runApp<\/span><span class=\"p\">(<\/span><span class=\"n\">MyApp<\/span><span class=\"p\">());<\/span>\n\n<span class=\"kd\">class<\/span> <span class=\"nc\">MyApp<\/span> <span class=\"kd\">extends<\/span> <span class=\"n\">StatelessWidget<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nd\">@override<\/span>\n  <span class=\"n\">Widget<\/span> <span class=\"n\">build<\/span><span class=\"p\">(<\/span><span class=\"n\">BuildContext<\/span> <span class=\"n\">context<\/span><span class=\"p\">)<\/span> <span class=\"p\">{<\/span>\n    <span class=\"k\">return<\/span> <span class=\"n\">MaterialApp<\/span><span class=\"p\">(<\/span>\n      <span class=\"nl\">home:<\/span> <span class=\"n\">UserPage<\/span><span class=\"p\">(),<\/span>\n    <span class=\"p\">);<\/span>\n  <span class=\"p\">}<\/span>\n<span class=\"p\">}<\/span>\n\n<span class=\"kd\">class<\/span> <span class=\"nc\">UserPage<\/span> <span class=\"kd\">extends<\/span> <span class=\"n\">StatefulWidget<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nd\">@override<\/span>\n  <span class=\"n\">_UserPageState<\/span> <span class=\"n\">createState<\/span><span class=\"p\">()<\/span> <span class=\"o\">=<\/span><span class=\"p\">&gt;<\/span> <span class=\"n\">_UserPageState<\/span><span class=\"p\">();<\/span>\n<span class=\"p\">}<\/span>\n\n<span class=\"kd\">class<\/span> <span class=\"nc\">_UserPageState<\/span> <span class=\"kd\">extends<\/span> <span class=\"n\">State<\/span><span class=\"p\">&lt;<\/span><span class=\"n\">UserPage<\/span><span class=\"p\">&gt;<\/span> <span class=\"p\">{<\/span>\n  <span class=\"kd\">final<\/span> <span class=\"n\">dbHelper<\/span> <span class=\"o\">=<\/span> <span class=\"n\">DatabaseHelper<\/span><span class=\"o\">.<\/span><span class=\"na\">instance<\/span><span class=\"p\">;<\/span>\n\n  <span class=\"kd\">final<\/span> <span class=\"n\">nameController<\/span> <span class=\"o\">=<\/span> <span class=\"n\">TextEditingController<\/span><span class=\"p\">();<\/span>\n  <span class=\"kd\">final<\/span> <span class=\"n\">emailController<\/span> <span class=\"o\">=<\/span> <span class=\"n\">TextEditingController<\/span><span class=\"p\">();<\/span>\n\n  <span class=\"kt\">void<\/span> <span class=\"n\">_insert<\/span><span class=\"p\">()<\/span> <span class=\"kd\">async<\/span> <span class=\"p\">{<\/span>\n    <span class=\"kt\">Map<\/span><span class=\"p\">&lt;<\/span><span class=\"kt\">String<\/span><span class=\"p\">,<\/span> <span class=\"kd\">dynamic<\/span><span class=\"p\">&gt;<\/span> <span class=\"n\">row<\/span> <span class=\"o\">=<\/span> <span class=\"p\">{<\/span>\n      <span class=\"n\">DatabaseHelper<\/span><span class=\"o\">.<\/span><span class=\"na\">columnName<\/span><span class=\"o\">:<\/span> <span class=\"n\">nameController<\/span><span class=\"o\">.<\/span><span class=\"na\">text<\/span><span class=\"p\">,<\/span>\n      <span class=\"n\">DatabaseHelper<\/span><span class=\"o\">.<\/span><span class=\"na\">columnEmail<\/span><span class=\"o\">:<\/span> <span class=\"n\">emailController<\/span><span class=\"o\">.<\/span><span class=\"na\">text<\/span><span class=\"p\">,<\/span>\n    <span class=\"p\">};<\/span>\n    <span class=\"kd\">final<\/span> <span class=\"n\">id<\/span> <span class=\"o\">=<\/span> <span class=\"k\">await<\/span> <span class=\"n\">dbHelper<\/span><span class=\"o\">.<\/span><span class=\"na\">insert<\/span><span class=\"p\">(<\/span><span class=\"n\">row<\/span><span class=\"p\">);<\/span>\n    <span class=\"n\">print<\/span><span class=\"p\">(<\/span><span class=\"s\">'Inserted row id: <\/span><span class=\"si\">$id<\/span><span class=\"s\">'<\/span><span class=\"p\">);<\/span>\n    <span class=\"n\">_queryAll<\/span><span class=\"p\">();<\/span>\n  <span class=\"p\">}<\/span>\n\n  <span class=\"kt\">void<\/span> <span class=\"n\">_queryAll<\/span><span class=\"p\">()<\/span> <span class=\"kd\">async<\/span> <span class=\"p\">{<\/span>\n    <span class=\"kd\">final<\/span> <span class=\"n\">allRows<\/span> <span class=\"o\">=<\/span> <span class=\"k\">await<\/span> <span class=\"n\">dbHelper<\/span><span class=\"o\">.<\/span><span class=\"na\">queryAllRows<\/span><span class=\"p\">();<\/span>\n    <span class=\"n\">print<\/span><span class=\"p\">(<\/span><span class=\"s\">'Query all rows:'<\/span><span class=\"p\">);<\/span>\n    <span class=\"n\">allRows<\/span><span class=\"o\">.<\/span><span class=\"na\">forEach<\/span><span class=\"p\">(<\/span><span class=\"n\">print<\/span><span class=\"p\">);<\/span>\n\n\n <span class=\"p\">}<\/span>\n\n  <span class=\"kt\">void<\/span> <span class=\"n\">_update<\/span><span class=\"p\">()<\/span> <span class=\"kd\">async<\/span> <span class=\"p\">{<\/span>\n    <span class=\"kt\">Map<\/span><span class=\"p\">&lt;<\/span><span class=\"kt\">String<\/span><span class=\"p\">,<\/span> <span class=\"kd\">dynamic<\/span><span class=\"p\">&gt;<\/span> <span class=\"n\">row<\/span> <span class=\"o\">=<\/span> <span class=\"p\">{<\/span>\n      <span class=\"n\">DatabaseHelper<\/span><span class=\"o\">.<\/span><span class=\"na\">columnId<\/span><span class=\"o\">:<\/span> <span class=\"mi\">1<\/span><span class=\"p\">,<\/span>\n      <span class=\"n\">DatabaseHelper<\/span><span class=\"o\">.<\/span><span class=\"na\">columnName<\/span><span class=\"o\">:<\/span> <span class=\"s\">'New Name'<\/span><span class=\"p\">,<\/span>\n      <span class=\"n\">DatabaseHelper<\/span><span class=\"o\">.<\/span><span class=\"na\">columnEmail<\/span><span class=\"o\">:<\/span> <span class=\"s\">'newemail@example.com'<\/span><span class=\"p\">,<\/span>\n    <span class=\"p\">};<\/span>\n    <span class=\"kd\">final<\/span> <span class=\"n\">rowsAffected<\/span> <span class=\"o\">=<\/span> <span class=\"k\">await<\/span> <span class=\"n\">dbHelper<\/span><span class=\"o\">.<\/span><span class=\"na\">update<\/span><span class=\"p\">(<\/span><span class=\"n\">row<\/span><span class=\"p\">);<\/span>\n    <span class=\"n\">print<\/span><span class=\"p\">(<\/span><span class=\"s\">'Updated <\/span><span class=\"si\">$rowsAffected<\/span><span class=\"s\"> row(s)'<\/span><span class=\"p\">);<\/span>\n    <span class=\"n\">_queryAll<\/span><span class=\"p\">();<\/span>\n  <span class=\"p\">}<\/span>\n\n  <span class=\"kt\">void<\/span> <span class=\"n\">_delete<\/span><span class=\"p\">()<\/span> <span class=\"kd\">async<\/span> <span class=\"p\">{<\/span>\n    <span class=\"kd\">final<\/span> <span class=\"n\">id<\/span> <span class=\"o\">=<\/span> <span class=\"k\">await<\/span> <span class=\"n\">dbHelper<\/span><span class=\"o\">.<\/span><span class=\"na\">delete<\/span><span class=\"p\">(<\/span><span class=\"mi\">1<\/span><span class=\"p\">);<\/span>\n    <span class=\"n\">print<\/span><span class=\"p\">(<\/span><span class=\"s\">'Deleted <\/span><span class=\"si\">$id<\/span><span class=\"s\"> row(s)'<\/span><span class=\"p\">);<\/span>\n    <span class=\"n\">_queryAll<\/span><span class=\"p\">();<\/span>\n  <span class=\"p\">}<\/span>\n\n  <span class=\"nd\">@override<\/span>\n  <span class=\"n\">Widget<\/span> <span class=\"n\">build<\/span><span class=\"p\">(<\/span><span class=\"n\">BuildContext<\/span> <span class=\"n\">context<\/span><span class=\"p\">)<\/span> <span class=\"p\">{<\/span>\n    <span class=\"k\">return<\/span> <span class=\"n\">Scaffold<\/span><span class=\"p\">(<\/span>\n      <span class=\"nl\">appBar:<\/span> <span class=\"n\">AppBar<\/span><span class=\"p\">(<\/span>\n        <span class=\"nl\">title:<\/span> <span class=\"n\">Text<\/span><span class=\"p\">(<\/span><span class=\"s\">'CRUD Operations'<\/span><span class=\"p\">),<\/span>\n      <span class=\"p\">),<\/span>\n      <span class=\"nl\">body:<\/span> <span class=\"n\">Padding<\/span><span class=\"p\">(<\/span>\n        <span class=\"nl\">padding:<\/span> <span class=\"kd\">const<\/span> <span class=\"n\">EdgeInsets<\/span><span class=\"o\">.<\/span><span class=\"na\">all<\/span><span class=\"p\">(<\/span><span class=\"mf\">16.0<\/span><span class=\"p\">),<\/span>\n        <span class=\"nl\">child:<\/span> <span class=\"n\">Column<\/span><span class=\"p\">(<\/span>\n          <span class=\"nl\">children:<\/span> <span class=\"p\">&lt;<\/span><span class=\"n\">Widget<\/span><span class=\"p\">&gt;[<\/span>\n            <span class=\"n\">TextField<\/span><span class=\"p\">(<\/span>\n              <span class=\"nl\">controller:<\/span> <span class=\"n\">nameController<\/span><span class=\"p\">,<\/span>\n              <span class=\"nl\">decoration:<\/span> <span class=\"n\">InputDecoration<\/span><span class=\"p\">(<\/span><span class=\"nl\">labelText:<\/span> <span class=\"s\">'Name'<\/span><span class=\"p\">),<\/span>\n            <span class=\"p\">),<\/span>\n            <span class=\"n\">TextField<\/span><span class=\"p\">(<\/span>\n              <span class=\"nl\">controller:<\/span> <span class=\"n\">emailController<\/span><span class=\"p\">,<\/span>\n              <span class=\"nl\">decoration:<\/span> <span class=\"n\">InputDecoration<\/span><span class=\"p\">(<\/span><span class=\"nl\">labelText:<\/span> <span class=\"s\">'Email'<\/span><span class=\"p\">),<\/span>\n            <span class=\"p\">),<\/span>\n            <span class=\"n\">Row<\/span><span class=\"p\">(<\/span>\n              <span class=\"nl\">children:<\/span> <span class=\"p\">&lt;<\/span><span class=\"n\">Widget<\/span><span class=\"p\">&gt;[<\/span>\n                <span class=\"n\">ElevatedButton<\/span><span class=\"p\">(<\/span>\n                  <span class=\"nl\">onPressed:<\/span> <span class=\"n\">_insert<\/span><span class=\"p\">,<\/span>\n                  <span class=\"nl\">child:<\/span> <span class=\"n\">Text<\/span><span class=\"p\">(<\/span><span class=\"s\">'Insert'<\/span><span class=\"p\">),<\/span>\n                <span class=\"p\">),<\/span>\n                <span class=\"n\">SizedBox<\/span><span class=\"p\">(<\/span><span class=\"nl\">width:<\/span> <span class=\"mi\">8<\/span><span class=\"p\">),<\/span>\n                <span class=\"n\">ElevatedButton<\/span><span class=\"p\">(<\/span>\n                  <span class=\"nl\">onPressed:<\/span> <span class=\"n\">_update<\/span><span class=\"p\">,<\/span>\n                  <span class=\"nl\">child:<\/span> <span class=\"n\">Text<\/span><span class=\"p\">(<\/span><span class=\"s\">'Update'<\/span><span class=\"p\">),<\/span>\n                <span class=\"p\">),<\/span>\n                <span class=\"n\">SizedBox<\/span><span class=\"p\">(<\/span><span class=\"nl\">width:<\/span> <span class=\"mi\">8<\/span><span class=\"p\">),<\/span>\n                <span class=\"n\">ElevatedButton<\/span><span class=\"p\">(<\/span>\n                  <span class=\"nl\">onPressed:<\/span> <span class=\"n\">_delete<\/span><span class=\"p\">,<\/span>\n                  <span class=\"nl\">child:<\/span> <span class=\"n\">Text<\/span><span class=\"p\">(<\/span><span class=\"s\">'Delete'<\/span><span class=\"p\">),<\/span>\n                <span class=\"p\">),<\/span>\n              <span class=\"p\">],<\/span>\n            <span class=\"p\">),<\/span>\n            <span class=\"n\">ElevatedButton<\/span><span class=\"p\">(<\/span>\n              <span class=\"nl\">onPressed:<\/span> <span class=\"n\">_queryAll<\/span><span class=\"p\">,<\/span>\n              <span class=\"nl\">child:<\/span> <span class=\"n\">Text<\/span><span class=\"p\">(<\/span><span class=\"s\">'Query'<\/span><span class=\"p\">),<\/span>\n            <span class=\"p\">),<\/span>\n          <span class=\"p\">],<\/span>\n        <span class=\"p\">),<\/span>\n      <span class=\"p\">),<\/span>\n    <span class=\"p\">);<\/span>\n  <span class=\"p\">}<\/span>\n<span class=\"p\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<h2><span class=\"ez-toc-section\" id=\"%D9%86%D8%AA%DB%8C%D8%AC%D9%87\"><\/span>\n<p>  \u0646\u062a\u06cc\u062c\u0647<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0628\u0631\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 \u0648 \u0645\u062f\u06cc\u0631\u06cc\u062a \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc \u062f\u0627\u062f\u0647 \u0645\u062d\u0648\u0631 \u0627\u0633\u0627\u0633\u06cc \u0627\u0633\u062a.  \u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0686\u0647 \u0628\u0631 \u0631\u0648\u06cc \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0647\u0627\u06cc \u0648\u0628\u060c \u062a\u0644\u0641\u0646 \u0647\u0645\u0631\u0627\u0647 \u06cc\u0627 \u062f\u0633\u06a9\u062a\u0627\u067e \u06a9\u0627\u0631 \u06a9\u0646\u0646\u062f\u060c \u0633\u062a\u0648\u0646 \u0641\u0642\u0631\u0627\u062a \u062a\u0639\u0627\u0645\u0644 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0631\u0627 \u062a\u0634\u06a9\u06cc\u0644 \u0645\u06cc\u200c\u062f\u0647\u0646\u062f \u0648 \u062a\u0636\u0645\u06cc\u0646 \u0645\u06cc\u200c\u06a9\u0646\u0646\u062f \u06a9\u0647 \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0647\u0627 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u0646\u062f \u0628\u0647 \u0637\u0648\u0631 \u0645\u0648\u062b\u0631 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0631\u0627 \u0645\u062f\u06cc\u0631\u06cc\u062a \u0648 \u062f\u0633\u062a\u06a9\u0627\u0631\u06cc \u06a9\u0646\u0646\u062f.  \u0627\u0632 API \u0647\u0627\u06cc RESTful \u062f\u0631 \u062a\u0648\u0633\u0639\u0647 \u0648\u0628 \u06af\u0631\u0641\u062a\u0647 \u062a\u0627 SQLite \u062f\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u062a\u0644\u0641\u0646 \u0647\u0645\u0631\u0627\u0647\u060c \u062f\u0631\u06a9 \u0648 \u0627\u062c\u0631\u0627\u06cc \u0639\u0645\u0644\u06cc\u0627\u062a CRUD \u0628\u0631\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0628\u0631\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f \u0631\u0627\u0647 \u062d\u0644 \u0647\u0627\u06cc \u0646\u0631\u0645 \u0627\u0641\u0632\u0627\u0631\u06cc \u0642\u0648\u06cc\u060c \u0645\u0642\u06cc\u0627\u0633 \u067e\u0630\u06cc\u0631 \u0648 \u0642\u0627\u0628\u0644 \u0646\u06af\u0647\u062f\u0627\u0631\u06cc \u0636\u0631\u0648\u0631\u06cc \u0627\u0633\u062a.<\/p>\n<p>\u0628\u0627 \u062a\u0633\u0644\u0637 \u0628\u0631 \u0639\u0645\u0644\u06cc\u0627\u062a CRUD\u060c \u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0645\u06cc \u062a\u0648\u0627\u0646\u0646\u062f \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u062d\u0627\u0635\u0644 \u06a9\u0646\u0646\u062f \u06a9\u0647 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc \u0622\u0646\u0647\u0627 \u0642\u0627\u062f\u0631 \u0628\u0647 \u0645\u062f\u06cc\u0631\u06cc\u062a \u06a9\u0627\u0631\u0622\u0645\u062f \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u060c \u062d\u0641\u0638 \u06cc\u06a9\u067e\u0627\u0631\u0686\u06af\u06cc \u062f\u0627\u062f\u0647 \u0647\u0627 \u0648 \u0627\u0631\u0627\u0626\u0647 \u06cc\u06a9 \u062a\u062c\u0631\u0628\u0647 \u06a9\u0627\u0631\u0628\u0631\u06cc \u06cc\u06a9\u067e\u0627\u0631\u0686\u0647 \u0647\u0633\u062a\u0646\u062f.  \u0647\u0645\u0627\u0646\u0637\u0648\u0631 \u06a9\u0647 \u062a\u06a9\u0646\u0648\u0644\u0648\u0698\u06cc \u0628\u0647 \u062a\u06a9\u0627\u0645\u0644 \u062e\u0648\u062f \u0627\u062f\u0627\u0645\u0647 \u0645\u06cc \u062f\u0647\u062f\u060c \u0627\u0635\u0648\u0644 CRUD \u0633\u0646\u06af \u0628\u0646\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u062f\u0627\u062f\u0647 \u062f\u0631 \u062a\u0648\u0633\u0639\u0647 \u0646\u0631\u0645 \u0627\u0641\u0632\u0627\u0631 \u0628\u0627\u0642\u06cc \u062e\u0648\u0627\u0647\u062f \u0645\u0627\u0646\u062f.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%F0%9F%92%B0_%D8%B4%D9%85%D8%A7_%D9%85%DB%8C_%D8%AA%D9%88%D8%A7%D9%86%DB%8C%D8%AF_%D8%A8%D8%A7_%D8%A7%D9%87%D8%AF%D8%A7_%D8%A8%D9%87_%D9%85%D9%86_%DA%A9%D9%85%DA%A9_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \ud83d\udcb0 \u0634\u0645\u0627 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0628\u0627 \u0627\u0647\u062f\u0627 \u0628\u0647 \u0645\u0646 \u06a9\u0645\u06a9 \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><img alt=\"BuyMeACoffee\" loading=\"lazy\" width=\"162\" height=\"28\"\/><\/p>\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Summarize this content to 400 words in Persian Lang \u062f\u0631 \u062d\u0648\u0632\u0647 \u0641\u0646\u0627\u0648\u0631\u06cc\u060c \u0628\u0647 \u0648\u06cc\u0698\u0647 \u062f\u0631 \u062a\u0648\u0633\u0639\u0647 \u0646\u0631\u0645 \u0627\u0641\u0632\u0627\u0631 \u0648 \u0645\u062f\u06cc\u0631\u06cc\u062a \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647\u060c \u0627\u0635\u0637\u0644\u0627\u062d &#8220;CRUD&#8221; \u0627\u0633\u0627\u0633\u06cc \u0627\u0633\u062a. \u0645\u062e\u0641\u0641 \u0622\u0646 \u0627\u0633\u062a \u0627\u06cc\u062c\u0627\u062f\u060c \u062e\u0648\u0627\u0646\u062f\u0646\u060c \u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc\u060c \u0648 \u062d\u0630\u0641. \u0627\u06cc\u0646 \u0686\u0647\u0627\u0631 \u0639\u0645\u0644\u06cc\u0627\u062a \u0627\u0633\u0627\u0633\u06cc \u0628\u0631\u0627\u06cc \u062a\u0639\u0627\u0645\u0644 \u0628\u0627 \u067e\u0627\u06cc\u06af\u0627\u0647 \u0647\u0627\u06cc \u062f\u0627\u062f\u0647 \u0636\u0631\u0648\u0631\u06cc \u0647\u0633\u062a\u0646\u062f \u0648 \u062f\u0631 \u0647\u0645\u0647 \u062c\u0627 \u062f\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627 &hellip;<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"","fifu_image_alt":"","footnotes":""},"categories":[339],"tags":[],"class_list":["post-67378","post","type-post","status-publish","format-standard","hentry","category-dev"],"_links":{"self":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/67378","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/comments?post=67378"}],"version-history":[{"count":0,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/67378\/revisions"}],"wp:attachment":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media?parent=67378"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/categories?post=67378"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/tags?post=67378"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}