Da jeg er total novice på Stored Procedure området, har jeg har et problem med at få skrevet en dato.
Mit ASP-script, der ser således ud:
<%
...
set objConn = CreateObject("ADODB.Connection")
objConn.open dbconn 'ConnectionString
sql = "EXEC usp_ListUsers @sortparm='" & sortby & "'"
set rs = objConn.EXECUTE(sql) 'line 11
response.write rs("userRegistrationDate")
%>
...og min Stored Procedure (MSSQL 2005) ser således ud:
-------------------------------------------
SET ANSI_NULLS ON
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[usp_ListUsers]
@SortParm varchar(50)
AS
BEGIN
SET NOCOUNT ON;
SELECT userID, userName, userCompany,
userCity, countryName,
usertypName,userRegistrationDate
FROM tblUsers INNER JOIN
tblUserType ON userType_FK = usertypID
INNER JOIN
tblCountry ON userCountry_FK = countryID
ORDER BY
CASE
WHEN @SortParm='Company' THEN userCompany
WHEN @SortParm='Name' THEN userName
WHEN @SortParm='City' THEN userCity
WHEN @SortParm='Type' THEN usertypName
WHEN @SortParm='RegDate' THEN userRegistrationDate
WHEN @SortParm='Country' THEN countryName
END
END
----------------------------------------
Hver gang jeg kører ASP-scriptet får jeg følgende fejl:
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'
[Microsoft][ODBC SQL Server Driver][SQL Server]Conversion failed when converting datetime from character string.
/ManageUsers.asp, line 11
Dropper jeg datofeltet, og skriver alle andre felter ud, er der ingen problemer.
Håber at én eller anden kan hjælpe mig videre.
Pfh. tak.
PS. Jeg er også ny på udvikleren.dk, så jeg er ikke helt klar over, hvordan det med point fungerer.
Indlæg senest redigeret d. 23.09.2009 13:18 af Bruger #15326