Article ID: 177187
Article Last Modified on 11/5/2003
CREATE PROC Test_SP
@Param VARCHAR (20) = NULL
AS
SELECT * FROM Test_Table WHERE Field = @Param
GO
CREATE PROC Test_SP
@Param VARCHAR (20) = NULL
AS
IF @Param = NULL
SELECT * FROM Test_Table WHERE Field = NULL
ELSE
SELECT * FROM Test_Table WHERE Field = @Param
GO
CREATE PROC Test_SP
@Param VARCHAR (20) = NULL
AS
SELECT * FROM Test_Table WHERE (Field = NULL and @Param = NULL) OR
(Field = @Param)
GO
CREATE PROC Test_SP
@Param VARCHAR (20) = NULL
AS
SELECT * FROM Test_Table WHERE Field2 = @Param
GO
CREATE TABLE Test_Table
(
Field1 INT NULL,
Field2 VARCHAR (20) NULL
)
GO
INSERT INTO Test_Table (Field1) Values (1)
INSERT INTO Test_Table (Field1) Values (2)
Field1 Field2 ----------- -------------------- 1 (null) 2 (null)
Dim cn As New rdoConnection
Dim rs As rdoResultset
Dim sql As String
cn.CursorDriver = rdUseOdbc
cn.Connect = "driver={sql server};" & _
"server=your_server_name;" & _
"uid=<username>;pwd=<strong password>;" & _
"database=pubs;"
cn.EstablishConnection rdDriverNoPrompt
sql = "Test_SP"
Set rs = cn.OpenResultset(sql, rdOpenKeyset, rdConcurReadOnly)
If Not rs.EOF Then rs.MoveLast
MsgBox rs.RowCount
rs.Close
cn.Close
Set rs = Nothing
Set cn = Nothing
Additional query words: sqlserver kbVBp500 kbVBp600 kbdsE kbDSupport kbVBp kbNoKeyWord
Keywords: kbbug KB177187