我有一个使用表适配器填充查询的数据集,如下所示:
SELECT LOGGING.HOLE_ID
,LOGGING.DEPTH_FROM
,LOGGING.DEPTH_TO
,LOGGING.CORE_SIZE_ID
,CORE_SIZE.NAME AS CORE_SIZE_CODE
,LOGGING.CORE_RECOVERY
,LOGGING.MATERIAL_ID
,MATERIAL.NAME AS MATERIAL_CODE
,LOGGING.ROCK_ID
,ROCK.NAME AS ROCK_CODE
,LOGGING.GRAIN_SIZE_ID
,GRAIN_SIZE.NAME AS GRAIN_SIZE_CODE
,LOGGING.SERPENTINE_ID
,SERPENTINE.NAME AS SERPENTINE_CODE
,LOGGING.WEATHERING_ID
,WEATHERING.NAME AS WEATHERING_CODE
,LOGGING.COLOUR_ID
,COLOUR.NAME AS COLOUR_CODE
,LOGGING.PRIMARY_TEXTURE_ID
,PRIMARY_T.NAME AS PRIMARY_TEXTURE_CODE
,LOGGING.SECONDARY_TEXTURE_ID
,SECONDARY_T.NAME AS SECONDARY_TEXTURE_CODE
,LOGGING.PRIMARY_MINERAL_ID
,PRIMARY_M.NAME AS PRIMARY_MINERAL_CODE
,LOGGING.SECONDARY_MINERAL_ID
,SECONDARY_M.NAME AS SECONDARY_MINERAL_CODE
,LOGGING.TERTIARY_MINERAL_ID
,TERTIARY_M.NAME AS TERTIARY_MINERAL_CODE
,LOGGING.MAGNETIC_SUSCEPTIBILITY
,LOGGING.FRACTURE_DENSITY
,LOGGING.BOULDER_LENGTH
,LOGGING.NOTE
,[USER].USER_ID AS LOGGER_BY
,LOGGING.LOGGER_DATE
,LOGGING.ROCK_QUALITY_DESIGN
,LOGGING.CREATED_BY
,LOGGING.CREATED_DATE
,LOGGING.MODIFIED_BY
,LOGGING.MODIFIED_DATE
FROM LOGGING
INNER JOIN MATERIAL ON LOGGING.MATERIAL_ID = MATERIAL.MATERIAL_ID
INNER JOIN CORE_SIZE ON LOGGING.CORE_SIZE_ID = CORE_SIZE.CORE_SIZE_ID
INNER JOIN ROCK ON LOGGING.ROCK_ID = ROCK.ROCK_ID
INNER JOIN GRAIN_SIZE ON LOGGING.GRAIN_SIZE_ID = GRAIN_SIZE.GRAIN_SIZE_ID
INNER JOIN SERPENTINE ON LOGGING.SERPENTINE_ID = SERPENTINE.SERPENTINE_ID
INNER JOIN WEATHERING ON LOGGING.WEATHERING_ID = WEATHERING.WEATHERING_ID
INNER JOIN COLOUR ON LOGGING.COLOUR_ID = COLOUR.COLOUR_ID
INNER JOIN TEXTURE AS PRIMARY_T ON LOGGING.PRIMARY_TEXTURE_ID = PRIMARY_T.TEXTURE_ID
INNER JOIN TEXTURE AS SECONDARY_T ON LOGGING.SECONDARY_TEXTURE_ID = SECONDARY_T.TEXTURE_ID
INNER JOIN MINERAL AS PRIMARY_M ON LOGGING.PRIMARY_MINERAL_ID = PRIMARY_M.MINERAL_ID
INNER JOIN MINERAL AS SECONDARY_M ON LOGGING.PRIMARY_MINERAL_ID = SECONDARY_M.MINERAL_ID
INNER JOIN MINERAL AS TERTIARY_M ON LOGGING.PRIMARY_MINERAL_ID = TERTIARY_M.MINERAL_ID
INNER JOIN DRILL_ASSIGNMENT ON LOGGING.HOLE_ID = DRILL_ASSIGNMENT.HOLE_ID
INNER JOIN [USER] ON LOGGING.LOGGER_BY = [USER].EMPLOYEE_ID
WHERE LOGGING.HOLE_ID = @HOLE_ID
ORDER BY LOGGING.HOLE_ID
,LOGGING.DEPTH_FROM
如果我在SSMS中运行以上查询,它将返回行。但是使用TableAdapter时,我不会在HOLE_ID
个数字处检索任何行。
例如,HOLE_ID D12372返回27行,但是HOLE_ID D39281不返回任何行。然后,HOLE_ID D39281在SSMS中返回值。对这个问题有什么意见或解决方案吗?
服务器,这应该指向您在其中测试的同一服务器SSMS。
最后,如果要在使用者方面形成SQL查询,请检查该字符串是否有串联错误。我使用该查询字符串并在SSMS中执行以查看其返回的行数。
最后,要解决此问题,应检查使用代码。