sql >> Base de Datos >  >> RDS >> Sqlserver

¿Cambiar el tamaño de la imagen de 150 * 150 a 70 * 70 al usar la consulta sql?

Estoy de acuerdo con los puntos de todos aquí, pero si realmente quisiera o tuviera que hacerlo, podría habilitar la integración de CLR en SQL Server, crear un ensamblaje que pudiera cambiar el tamaño de su imagen y luego llamarlo desde un disparador o proceso. No es muy difícil. Aquí una página que describe el proceso:http:// msdn.microsoft.com/en-us/library/ms254498(VS.80).aspx

Básicamente, para habilitar CLR en SQL Server:

sp_configure 'clr enabled', 1
GO
RECONFIGURE
GO

Cree un ensamblado c# para cambiar el tamaño de su imagen:

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
    }
}

Compile el ensamblaje

csc /target:library ResizeImageProc.cs 

Cargue el ensamblado en SQL Server:

CREATE ASSEMBLY ResizeImageAssembly from 'c:\ResizeImageProc.dll' WITH PERMISSION_SET = SAFE

Crear el proceso

CREATE PROCEDURE ResizeImage AS EXTERNAL NAME ResizeImageAssembly.ResizeImageProc.ResizeImage

Después de eso, puede llamarlo como un proceso normal. Por ejemplo:

EXEC ResizeImage(1,800,600)