06. oktober 2005 - 08:37Der er
7 kommentarer og 1 løsning
SQL fejl med Ambiguous
jeg har nedenstående sql men får fejl. fejlen er indsat under sql. Er der nogen der ved hvorfor ?
"SELECT * FROM dbo.tblInjury, dbo.tblEmployee WHERE dbo.tblInjury.CivilRegistrationNumber = dbo.tblEmployee.CivilRegistrationNumber AND (DateOfInjury between '" & ConvertToSqlDate(Request.Querystring("startdate")) & "' AND '" & ConvertToSqlDate(Request.Querystring("enddate")) & "') AND (SickDays between '" & (Request.Querystring("min")) & "' AND '" & (Request.Querystring("max")) & "') "
fejl: Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC SQL Server Driver][SQL Server]Ambiguous column name 'CivilRegistrationNumber'.
/reports/include/injury_occupationalinjury.asp, line 50
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
CivilRegistrationNumber findes i begge tabeller. Jeg har forsøgt at sætte de værdier ind jeg skal bruge, men det virker heller ikke. Burde den ikke være ok når jeg skriver: dbo.tblInjury.CivilRegistrationNumber = dbo.tblEmployee.CivilRegistrationNumber
tsk_sql = "SELECT dbo.tblInjury.DateOfInjury,dbo.tblInjury.injurynatureID,dbo.tblInjury.injurypartID,dbo.tblEmployee.jobpositionID,dbo.tblEmployee.nationalityID,dbo.tblEmployee.jobtypeID,dbo.tblEmployee.vesselterminalID,dbo.tblEmployee.CivilRegistrationNumber FROM dbo.tblInjury, dbo.tblEmployee WHERE dbo.tblInjury.CivilRegistrationNumber = dbo.tblEmployee.CivilRegistrationNumber AND (DateOfInjury between '" & ConvertToSqlDate(Request.Querystring("startdate")) & "' AND '" & ConvertToSqlDate(Request.Querystring("enddate")) & "') AND (SickDays between '" & (Request.Querystring("min")) & "' AND '" & (Request.Querystring("max")) & "') "
tsk_sql = "SELECT * WHERE dbo.tblInjury.CivilRegistrationNumber = dbo.tblEmployee.CivilRegistrationNumber AND (DateOfInjury between '" & ConvertToSqlDate(Request.Querystring("startdate")) & "' AND '" & ConvertToSqlDate(Request.Querystring("enddate")) & "') AND (SickDays between '" & (Request.Querystring("min")) & "' AND '" & (Request.Querystring("max")) & "') "
If Request.QueryString("vesselterminal")<>"" Then tsk_sql = tsk_sql & "AND vesselterminalID = " & Request.QueryString("vesselterminal") & " " End if If Request.QueryString("jobposition")<>"" Then tsk_sql = tsk_sql & "AND jobpositionID = " & Request.QueryString("jobposition") & " " End if If Request.QueryString("injuryplace")<>"" Then tsk_sql = tsk_sql & "AND injuryplaceID = " & Request.QueryString("injuryplace") & " " End if If Request.QueryString("injurynature")<>"" Then tsk_sql = tsk_sql & "AND injurynatureID = " & Request.QueryString("injurynature") & " " End if If Request.QueryString("injurypart")<>"" Then tsk_sql = tsk_sql & "AND injurypartID = " & Request.QueryString("injurypart") & " " End if tsk_sql = tsk_sql & "ORDER BY " & Request.QueryString("orderby") & " ASC"
Set rsResults = Server.CreateObject("ADODB.Recordset") rsResults.ActiveConnection = MM_claims_conn_STRING tsk_sql = "SELECT * FROM dbo.tblInjury LEFT JOIN dbo.tblEmployee ON dbo.tblInjury.CivilRegistrationNumber = dbo.tblEmployee.CivilRegistrationNumberE "
If Request.QueryString("vesselterminal")<>"" Then tsk_sql = tsk_sql & "AND vesselterminalID = " & Request.QueryString("vesselterminal") & " " End if If Request.QueryString("jobposition")<>"" Then tsk_sql = tsk_sql & "AND jobpositionID = " & Request.QueryString("jobposition") & " " End if
tsk_sql = tsk_sql & "WHERE (DateOfInjury between '" & ConvertToSqlDate(Request.Querystring("startdate")) & "' AND '" & ConvertToSqlDate(Request.Querystring("enddate")) & "') "
If Request.QueryString("min")<>"0" Then tsk_sql = tsk_sql & "AND (SickDays between '" & (Request.Querystring("min")) & "' AND '" & (Request.Querystring("max")) & "') " Else If Request.QueryString("max")<>"999" Then tsk_sql = tsk_sql & "AND (SickDays between '" & (Request.Querystring("min")) & "' AND '" & (Request.Querystring("max")) & "') " End if End if
If Request.QueryString("injuryplace")<>"" Then tsk_sql = tsk_sql & "AND injuryplaceID = " & Request.QueryString("injuryplace") & " " End if If Request.QueryString("injurynature")<>"" Then tsk_sql = tsk_sql & "AND injurynatureID = " & Request.QueryString("injurynature") & " " End if If Request.QueryString("injurypart")<>"" Then tsk_sql = tsk_sql & "AND injurypartID = " & Request.QueryString("injurypart") & " " End if tsk_sql = tsk_sql & "ORDER BY " & Request.QueryString("orderby") & " ASC"
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.