یک شنبه, ۳۱ شهریور ۱۳۹۸ ۰۴:۴۰:۵۱

عدم نمایش عکس های سایت بعد از ارتقای ناپ کامرس به 4.10

2 ماه قبل
#1854 نقل و قول
من سایتم را از ناپ کامرس 3.90 به 4.10 ارتقا دادم. الان تمام عکس های سایت بصورت No Image نمایش داده میشه.
0
2 ماه قبل
#1857 نقل و قول
1. بررسی کنید ببینید اگر جدول PictureBinary در دیتابیس شما وجود دارد.
2. اگر جدول PictureBinary در دیتابیس شما وجود دارد ، مراحل زیر را تا مرحله 3 انجام دهید
1.2  اسکریپت زیر را اجرا کنید:
IF EXISTS (SELECT *  FROM sys.foreign_keys  WHERE object_id = OBJECT_ID(N'FK_PictureBinary_Picture_PictureId') AND parent_object_id = OBJECT_ID(N'PictureBinary'))
    ALTER TABLE [PictureBinary] DROP CONSTRAINT [FK_PictureBinary_Picture_PictureId]
  GO


2.2  تعداد کل رکورهای جدول PictureBinary را بررسی کنید:
select count(*) from PictureBinary

3.2  اگر تعداد رکورد کمی وجود دارد یا هیچ رکوردی در جدول وجود ندارد ، اسکریپت زیر را اجرا کنید:
 --copy existing data
    INSERT INTO [dbo].[PictureBinary](PictureId, BinaryData)
    SELECT [Id], [PictureBinary] FROM [dbo].[Picture]


اگر تعداد رکورد زیادی در جدول Picture دارید ، سپس اسکریپت SQL زیر را اجرا کنید. این از رکوردهای تکراری در جدول جلوگیری می کند:
INSERT INTO [dbo].[PictureBinary](PictureId, BinaryData)
    SELECT top 1 [Id], [PictureBinary] FROM [dbo].[Picture] where Id NOT IN (select PictureId from [PictureBinary])


4.2. تعداد رکوردهای جدول PictureBinary را بررسی کنیدو (این شبیه رکوردهای جدول Picture  خواهد بود)

3.  اگر جدول PictureBinary وجود ندارد. مراحل زیر را انجام دهید:
1.3 جدول را از طریق اسکریپت زیر ایجاد کنید:
CREATE TABLE [dbo].[PictureBinary]
    (
    [Id] int IDENTITY(1,1) NOT NULL,
    [PictureId] int NOT NULL,
    [BinaryData] [varbinary](max) NULL,    
    PRIMARY KEY CLUSTERED
    (
      [Id] ASC
    ) WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON)
  )


2.3 قدم دو را دنبال کنید

4.یکبار که مراحل فوق را انجام دادید محتوای جدول تصاویر به جدول PictureBinary  کپی می شود. حال جدول Picture  را حذف کنید:
ALTER TABLE dbo.Picture  DROP COLUMN [PictureBinary]')  


5. اکنون اسکریپت زیر را اجرا کنید:
IF EXISTS (SELECT *  FROM sys.foreign_keys  WHERE object_id = OBJECT_ID(N'FK_PictureBinary_Picture_PictureId') AND parent_object_id = OBJECT_ID(N'PictureBinary'))
  ALTER TABLE [PictureBinary] DROP CONSTRAINT [FK_PictureBinary_Picture_PictureId]
GO

ALTER TABLE [dbo].[PictureBinary] WITH CHECK ADD CONSTRAINT [FK_PictureBinary_Picture_PictureId] FOREIGN KEY(PictureId)
REFERENCES [dbo].[Picture] ([Id])
ON DELETE CASCADE
GO

1