si, tienes que crear un "Stored Procedure" o Procedimiento almacenado
En teoría, a este procedimiento le mandas como parámetro la cadena que quieres revisar y te regresa los datos ya separados, los cuales puedes usar en delphi, en otro procedimiento o donde quieras...
para crear el procedimiento, podrías hacer lo siguiente:
Código SQL
[-]SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO
-- Para ejecutar el procedimiento utilizas:
--Exec ObtenerDatos '1;3.5;2;B4'
CREATE PROCEDURE ObtenerDatos
@Cadena varchar(20)
AS
Declare
@Piezas integer,
@Largo float,
@Alto float,
@Ubicacion varchar(20)
Select @PIezas = SubString(@Cadena, 0, CharIndex(';', @Cadena))
Select @Cadena = SubString(@Cadena, CharIndex(';', @Cadena)+1,len(@Cadena))
Select @Largo = SubString(@Cadena, 0, CharIndex(';', @Cadena))
Select @Cadena = SubString(@Cadena, CharIndex(';', @Cadena)+1,len(@Cadena))
Select @Alto = SubString(@Cadena, 0, CharIndex(';', @Cadena))
Select @Ubicacion = SubString(@Cadena, CharIndex(';', @Cadena)+1,len(@Cadena))
Select @Piezas as Piezas, @Largo as Largo ,@Alto as Alto, @Ubicacion as Ubicacion
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO