Ik ben het eens met de punten van iedereen hier, maar als je echt wilde of moest, zou je CLR-integratie op de SQL Server kunnen inschakelen, een assembly maken die de grootte van je afbeelding kan wijzigen en deze vervolgens vanuit een trigger of proc kunnen aanroepen. Het is niet erg moeilijk. Hier een pagina die het proces beschrijft:http:// msdn.microsoft.com/en-us/library/ms254498(VS.80).aspx
Om CLR op de SQL Server in te schakelen:
sp_configure 'clr enabled', 1
GO
RECONFIGURE
GO
Maak een c#-assembly om het formaat van uw afbeelding te wijzigen:
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
}
}
Stel de montage samen
csc /target:library ResizeImageProc.cs
Laad de assembly in de SQL Server:
CREATE ASSEMBLY ResizeImageAssembly from 'c:\ResizeImageProc.dll' WITH PERMISSION_SET = SAFE
Maak het proces
CREATE PROCEDURE ResizeImage AS EXTERNAL NAME ResizeImageAssembly.ResizeImageProc.ResizeImage
Daarna kun je het als een normale proc noemen. Bijvoorbeeld:
EXEC ResizeImage(1,800,600)