Jeg er enig i alles pointer her, men hvis du virkelig ville eller skulle, kunne du aktivere CLR-integration på SQL Serveren, oprette en assembly, der kunne ændre størrelsen på dit billede, og derefter kalde det fra en trigger eller proc. Det er ikke særlig svært. Her er en side, der beskriver processen:http:// msdn.microsoft.com/en-us/library/ms254498(VS.80).aspx
Grundlæggende for at aktivere CLR på SQL Server:
sp_configure 'clr enabled', 1
GO
RECONFIGURE
GO
Opret en c#-samling for at ændre størrelsen på dit billede:
using System;
using System.Data;
using Microsoft.SqlServer.Server;
using System.Data.SqlTypes;
public class ResizeImageProc
{
[Microsoft.SqlServer.Server.SqlProcedure]
public static void ResizeImage(int ImageID, int width, int height)
{
//TODO: ResizeImage Code
}
}
Kompiler forsamlingen
csc /target:library ResizeImageProc.cs
Indlæs assembly i SQL Server:
CREATE ASSEMBLY ResizeImageAssembly from 'c:\ResizeImageProc.dll' WITH PERMISSION_SET = SAFE
Opret processen
CREATE PROCEDURE ResizeImage AS EXTERNAL NAME ResizeImageAssembly.ResizeImageProc.ResizeImage
Derefter kan du kalde det som en normal proc. For eksempel:
EXEC ResizeImage(1,800,600)