Ich stimme allen Punkten hier zu, aber wenn Sie wirklich wollten oder mussten, könnten Sie die CLR-Integration auf dem SQL Server aktivieren, eine Assembly erstellen, die die Größe Ihres Bildes ändern könnte, und sie dann von einem Trigger oder einer Prozedur aufrufen. Es ist nicht sehr schwer. Hier eine Seite, die den Vorgang beschreibt:http:// msdn.microsoft.com/en-us/library/ms254498(VS.80).aspx
Grundsätzlich CLR auf dem SQL Server aktivieren:
sp_configure 'clr enabled', 1
GO
RECONFIGURE
GO
Erstellen Sie eine C#-Assembly, um die Größe Ihres Bildes zu ändern:
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
}
}
Kompilieren Sie die Assembly
csc /target:library ResizeImageProc.cs
Laden Sie die Assembly in den SQL Server:
CREATE ASSEMBLY ResizeImageAssembly from 'c:\ResizeImageProc.dll' WITH PERMISSION_SET = SAFE
Erstellen Sie den Prozess
CREATE PROCEDURE ResizeImage AS EXTERNAL NAME ResizeImageAssembly.ResizeImageProc.ResizeImage
Danach können Sie es wie eine normale Prozedur aufrufen. Zum Beispiel:
EXEC ResizeImage(1,800,600)