MS SQL triggers and ruby

Is there a way for a trigger in MS SQL 2000 to fire some ruby code? I
would like to act upon the insertion of some data in the database.

Guillaume.

“Guillaume Marcais” guslist@free.fr wrote in message

Is there a way for a trigger in MS SQL 2000 to fire some ruby code? I
would like to act upon the insertion of some data in the database.

Sure ! First make sure that you do not have any important table named
RUBY_TEST in the PUBS database and run this in Query Analyzer :

···

USE PUBS

IF OBJECT_ID(‘RUBY_TEST’,‘U’) is not NULL
DROP TABLE RUBY_TEST

CREATE TABLE RUBY_TEST(A INT)

GO

IF EXISTS (SELECT name
FROM sysobjects
WHERE name = N’trig_test’
AND type = ‘TR’)
DROP TRIGGER trig_test
GO

CREATE TRIGGER trig_test
ON RUBY_TEST
FOR DELETE, INSERT, UPDATE
AS
BEGIN
EXEC master…xp_cmdshell ‘c:\ruby\bin\ruby -ve “puts %Q{Hello World}”’
END

GO

INSERT INTO RUBY_TEST VALUES(20)

Thanx

···

Le 21 avr. 04, à 19:59, Shashank Date a écrit :

“Guillaume Marcais” guslist@free.fr wrote in message

Is there a way for a trigger in MS SQL 2000 to fire some ruby code? I
would like to act upon the insertion of some data in the database.

Sure ! First make sure that you do not have any important table named
RUBY_TEST in the PUBS database and run this in Query Analyzer :

USE PUBS

IF OBJECT_ID(‘RUBY_TEST’,‘U’) is not NULL
DROP TABLE RUBY_TEST

CREATE TABLE RUBY_TEST(A INT)

GO

IF EXISTS (SELECT name
FROM sysobjects
WHERE name = N’trig_test’
AND type = ‘TR’)
DROP TRIGGER trig_test
GO

CREATE TRIGGER trig_test
ON RUBY_TEST
FOR DELETE, INSERT, UPDATE
AS
BEGIN
EXEC master…xp_cmdshell ‘c:\ruby\bin\ruby -ve “puts %Q{Hello World}”’
END

GO

INSERT INTO RUBY_TEST VALUES(20)

My object-relational mapping library Lafcadio also has triggers in it.
You can check it out at http://lafcadio.rubyforge.org/ . You can write
both pre- and post-commit triggers in Ruby code, and you can even
write automated tests against those triggers if that’s your sort of
thing.

Lafcadio was written first for MySQL but I know somebody who’s managed
to make use of it with MS SQL Server.

Francis

Guillaume Marcais guslist@free.fr wrote in message news:0C60E21F-9403-11D8-88E9-003065ED1070@free.fr

···

Thanx

Le 21 avr. 04, à 19:59, Shashank Date a écrit :

“Guillaume Marcais” guslist@free.fr wrote in message

Is there a way for a trigger in MS SQL 2000 to fire some ruby code? I
would like to act upon the insertion of some data in the database.

Sure ! First make sure that you do not have any important table named
RUBY_TEST in the PUBS database and run this in Query Analyzer :

USE PUBS

IF OBJECT_ID(‘RUBY_TEST’,‘U’) is not NULL
DROP TABLE RUBY_TEST

CREATE TABLE RUBY_TEST(A INT)

GO

IF EXISTS (SELECT name
FROM sysobjects
WHERE name = N’trig_test’
AND type = ‘TR’)
DROP TRIGGER trig_test
GO

CREATE TRIGGER trig_test
ON RUBY_TEST
FOR DELETE, INSERT, UPDATE
AS
BEGIN
EXEC master…xp_cmdshell ‘c:\ruby\bin\ruby -ve “puts %Q{Hello World}”’
END

GO

INSERT INTO RUBY_TEST VALUES(20)

Hello Francis,

Friday, April 23, 2004, 9:14:06 PM, you wrote:

My object-relational mapping library Lafcadio also has triggers in it.
You can check it out at http://lafcadio.rubyforge.org/ . You can write
both pre- and post-commit triggers in Ruby code, and you can even
write automated tests against those triggers if that’s your sort of
thing.

Lafcadio was written first for MySQL but I know somebody who’s managed
to make use of it with MS SQL Server.

And did he send you the patches ?

···


Best regards,
Lothar mailto:mailinglists@scriptolutions.com

Lothar Scholz mailinglists@scriptolutions.com wrote in message news:893738343.20040423214225@scriptolutions.com

Hello Francis,

Friday, April 23, 2004, 9:14:06 PM, you wrote:

My object-relational mapping library Lafcadio also has triggers in it.
You can check it out at http://lafcadio.rubyforge.org/ . You can write
both pre- and post-commit triggers in Ruby code, and you can even
write automated tests against those triggers if that’s your sort of
thing.

Lafcadio was written first for MySQL but I know somebody who’s managed
to make use of it with MS SQL Server.

And did he send you the patches ?

Well, it’s Kaspar, and he’s sent me patches for plenty of other
things, but not for MS SQL. Which leads me to believe that at the
level of SQL that Lafcadio uses there are no patches necessary.

FWIW, I’m very interested in supporting any DB, but I’m not certain
exactly how to do it with MS SQL since I don’t have regular access to
a Windows box that I could use to ensure things were working. (My
computing life is solidly OS X and Linux these days.) I wonder how
other project maintainers handle this sort of thing.

F.