From:
<car...@te...> - 2003-04-10 08:29:53
|
Hello: > The problem is that you cannot send a statement to create a trigger or other > stored procedure because the separator used by the stored proc code is a > semi-colon. Interbase has for years allowed you to change the separator with > the SET TERM statement. If you can't do that, then you can't create or edit > stored procs. > > I'm using the latest sources checked out this afternoon using CVS, including > the CreateDatabase() method & rebuilt with NAnt. I have made more changes, now you can for example alter a stored proc using ExecuteNonQuery, an example that is working for me: FbConnection connection = new FbConnection(connectionString); connection.Open(); FbTransaction transaction = connection.BeginTransaction(); StringBuilder commandText = new StringBuilder(); commandText.Append( "ALTER PROCEDURE SELECT_DATA " + " RETURNS ( " + " INT_FIELD INTEGER, " + " VARCHAR_FIELD VARCHAR(100), " + " DECIMAL_FIELD DECIMAL(15,2)) " + " AS " + " begin " + " SELECT INT_FIELD, VARCHAR_FIELD, DECIMAL_FIELD FROM TEST_TABLE_01 " + " WHERE INT_FIELD = 2 INTO :INT_FIELD, :VARCHAR_FIELD, :DECIMAL_FIELD; " + " suspend; "+ " end "); FbCommand command = new FbCommand(commandText.ToString(), connection, transaction); command.ExecuteNonQuery(); transaction.Commit(); connection.Close(); -- Best regards Carlos Guzmán Álvarez Vigo-Spain "No tengo dones especiales.Sólo soy apasionadamente curioso" Albert Einstein, científico. |