How to pass NULL or empty strings to stored procedure input parameter with ADO and VB?
Date : March 29 2020, 07:55 AM
I hope this helps you . A quick test here shows that's NULL ought to do the job. Sample code I used to test (onto a simple form with one button and one textbox): Private Sub Command1_Click()
Dim dbConn As ADODB.Connection
Dim dbComm As ADODB.Command
Dim dbRS As ADODB.Recordset
Set dbConn = New ADODB.Connection
With dbConn
.ConnectionString = "...REPLACE THIS ACCORDINGLY..."
.ConnectionTimeout = 10
.Open
End With
Set dbComm = New ADODB.Command
With dbComm
.ActiveConnection = dbConn
.CommandType = adCmdStoredProc
.CommandText = "usp_Bob"
.Parameters.Append .CreateParameter("b", adVarChar, adParamInput, 10, Null)
Set dbRS = .Execute
End With
Text1.Text = dbRS.Fields.Item(0).Value
dbRS.Close
dbConn.Close
End Sub
ALTER PROCEDURE usp_Bob
@b VARCHAR(10)
AS
IF @b IS NULL
SELECT 'NULL' AS '1'
ELSE
IF @b = ''
SELECT 'EMPTY' AS '1'
ELSE
SELECT 'NOT NULL AND NOT EMPTY' AS '1'
IF @param = ''
SET @param = NULL
|
how to pass parameter of stored procedure to the selected list?
Date : March 29 2020, 07:55 AM
should help you out You need to start the stored procedure body with a BEGIN. Also I'd recommend against using @vars in a stored procedure, because they leak to the outside. Better to used typed declared vars. DELIMITER $$
CREATE PROCEDURE SP_InsertTag_Level2 (IN tag_v varchar(50), IN CNT_v int)
BEGIN
DECLARE tid INTEGER;
DECLARE myid INTEGER;
SELECT tweet_id INTO tid FROM tweet_tags WHERE tag=tag_v;
INSERT INTO collected_tags (tag,country)
SELECT tag_v, A.country
FROM collected_tags A
INNER JOIN tweet_tags B on (A.tag = B.tag)
WHERE B.tweet_id = tid
SELECT id INTO myId FROM collected_tags WHERE tag=tag_v;
IF (myId IS NOT NULL) THEN
INSERT INTO stats_tag(id,counter) VALUES (myid,CNT_v);
END IF;
END $$
DELIMITER ;
|
Pass List of strings to a stored procedure
Date : March 29 2020, 07:55 AM
like below fixes the issue Convert the comma seperated value to table using the XML. Use this updated procedure. USE [App]
GO
/****** Object: StoredProcedure [dbo].[GetWorkspaceMapDetailsForUserByGroups]
Script Date: 16/02/2015 10:37:46 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[GetWorkspaceMapDetailsForUserByGroups]
@workspaceID int,
@viewMap nvarchar(256)
AS
SELECT
m.*
FROM
GeoAppMapDef m
WHERE
m.workspaceID = @workspaceID
and m.IsDeleted = 0
and m.ViewMap IN
(
SELECT
Split.a.value('.', 'VARCHAR(100)') AS CVS
FROM
(
SELECT CAST ('<M>' + REPLACE(@viewMap, ',', '</M><M>') + '</M>' AS XML) AS CVS
) AS A CROSS APPLY CVS.nodes ('/M') AS Split(a)
)
|
How to pass list of items as parameter to a stored procedure
Date : March 29 2020, 07:55 AM
|
How do I pass a list as a parameter in a stored procedure?
Tag : sql , By : Murali Ravipudi
Date : March 29 2020, 07:55 AM
|