Xojo Conferences
XDCMay2019MiamiUSA

Platforms to show: All Mac Windows Linux Cross-Platform

/SQL/SQLDatabaseMBS Microsoft SQL Execute Stored Procedure
Function:
Required plugins for this example: MBS SQL Plugin
You find this example project in your Plugins Download as a Xojo project file within the examples folder: /SQL/SQLDatabaseMBS Microsoft SQL Execute Stored Procedure
This example is the version from Sun, 20th Aug 2016.
Project "SQLDatabaseMBS Microsoft SQL Execute Stored Procedure.rbp"
Class App Inherits Application
Const kEditClear = "&Löschen"
Const kFileQuit = "Beenden"
Const kFileQuitShortcut = ""
End Class
Class Window1 Inherits Window
Control server Inherits TextField
ControlInstance server Inherits TextField
End Control
Control StaticText1 Inherits Label
ControlInstance StaticText1 Inherits Label
End Control
Control PushButton1 Inherits PushButton
ControlInstance PushButton1 Inherits PushButton
EventHandler Sub Action() dim con as new SQLDatabaseMBS // connects to Microsoft SQL Server on Windows // // e.g. localhost\SQLEXPRESS@test try // connect to database // in this example it is Microsoft SQL Server, // but can also be Sybase, Informix, DB2 // Oracle, InterBase, SQLBase and ODBC con.Option("OLEDBProvider") = "SQLNCLI" // SQLNCLI for SQL Server 2005, SQLNCLI10 for newer version. 'con.Option("UseAPI") = "DB-Library" // server format should be: // PcName\SqlServerInstanceName@DatabaseName con.DatabaseName = "SQLServer:"+server.Text con.UserName = user.text con.Password = password.text con.RaiseExceptions = true // if you like to get exceptions instead of checking error property con.Scrollable = false // disabling scrolling cursors is much faster for Microsoft SQL Server... if con.Connect then // call stored procedure // normal 'dim sql as string = "EXEC dbo.Test 6" 'dim r as RecordSet = con.SQLSelect(sql) // with prepared statement dim sql as string = "dbo.Test" dim ps as SQLPreparedStatementMBS = con.Prepare(sql) ps.Bind("Param1", 7) ps.BindType("Param1", ps.kTypeLong) dim r as RecordSet = ps.SQLSelect if r<>nil then MsgBox r.IdxField(1).StringValue else MsgBox "Failed" end if // Disconnect is optional // autodisconnect will ocur in destructor if needed con.Close end if catch r as RuntimeException MsgBox r.message end try End EventHandler
End Control
Control user Inherits TextField
ControlInstance user Inherits TextField
End Control
Control StaticText2 Inherits Label
ControlInstance StaticText2 Inherits Label
End Control
Control password Inherits TextField
ControlInstance password Inherits TextField
End Control
Control StaticText3 Inherits Label
ControlInstance StaticText3 Inherits Label
End Control
Control StaticText4 Inherits Label
ControlInstance StaticText4 Inherits Label
End Control
Note "Stored Procedure"
-- below our test stored procedure for Microsoft SQL Server. Returns number plus 5 -- ================================================ -- Template generated from Template Explorer using: -- Create Procedure (New Menu).SQL -- -- Use the Specify Values for Template Parameters -- command (Ctrl-Shift-M) to fill in the parameter -- values below. -- -- This block of comments will not be included in -- the definition of the procedure. -- ================================================ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE Test -- Add the parameters for the stored procedure here @Param1 VARCHAR AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; -- Insert statements for procedure here SELECT @Param1 + 5; END GO
End Class
MenuBar MenuBar1
MenuItem FileMenu = "&Ablage"
MenuItem FileQuit = "#App.kFileQuit"
MenuItem EditMenu = "&Bearbeiten"
MenuItem EditUndo = "&Rückgängig"
MenuItem UntitledMenu1 = "-"
MenuItem EditCut = "&Ausschneiden"
MenuItem EditCopy = "&Kopieren"
MenuItem EditPaste = "&Einfügen"
MenuItem EditClear = "#App.kEditClear"
MenuItem UntitledMenu0 = "-"
MenuItem EditSelectAll = "&Alles auswählen"
End MenuBar
End Project

See also:

Feedback, Comments & Corrections

The items on this page are in the following plugins: MBS SQL Plugin.




Links
MBS Xojo Plugins