در این مقاله سعی داریم نحوه بارگذاری یک فایل JSON را در یک جدولی در sql server آموزش دهیم.
شما میتوانید به راحتی با قطعه دستور زیر یک فایل json را در sql server باز کرده و سپس با دستور insert into select رکوردهای مد نظر خود را از فایل در جدول مقصد اضافه کنید.
ابتدا یک متغیر تعریف میکنید. دقت کنید که اگر محتویات فایل دارای کارکترهای فارسی است نوع آن متغیر را nvarchar بگذارید.
DECLARE @JSON NVARCHAR(MAX)
سپس مسیر فایل را مشخص و با دستور OPENROWSET محتویات فایل را به sql server میدهیم.
SELECT @JSON = BulkColumn
FROM OPENROWSET
(BULK 'File Location....', SINGLE_NCLOB)
AS j
دقت شود باز هم در اینجا اگر فایل دارای کارکترهای فارسی است بجای استفاده از SINGLE_CLUB از SINGLE_NCLOB استفاده میکنیم.
و در اخر با استفاده از دستور insert into select from @json محتویات فایل را در جدول مقصد میریزیم.
نکتهای که وجود دارد این است که گاهی لازم میشود قبل از insert در جدول نوع دیتا تایپ های فیلدهای درون فایل را از کاراکتر تبدیل به نوع دلخواه کنیم که این کار به آسانی و با دستور
(With ( column name data type
انجام میشود. و باز هم این نکته را فراموش نکنید که sql server برای فایل ها یا ستون های با نوع دادهای Json به حروف بزرگ و کوچک حساس هست پس حتما موقع عوض کردن نوع دیتا تایپ با دستور With حتما به بزرگ یا کوچک بودن نام ستونها دقت کنید.