参数 Ms 访问查询的默认值

Default value for Parameter Ms Access Query

我有这样的 MS 访问查询:

PARAMETERS prmORIGINCODE Text ( 255 ), 
           prmORIGIN Text ( 255 ),
           prmSERVICECODE Text ( 255 ),
           prmDESTINATION Text ( 255 ), 
           prmDESTCODE Text ( 255 ), 
           prmSTARTDATE Text ( 255 ), 
           prmENDDATE Text ( 255 );

SELECT 
    SUMMARY.DEST_CITY, 
    SUMMARY.DESTINATION, 
    Count(SUMMARY.CNOTE_NO) AS CountOfCNOTE_NO
FROM SUMMARY
WHERE (
        (
          (SUMMARY.ORIGIN_CODE) = [prmORIGINCODE]) AND
            ((SUMMARY.CNOTE_SERVICES_CODE) = [prmSERVICECODE]) AND 
            ((SUMMARY.ORIGIN) = [prmORIGIN]) AND ((SUMMARY.DEST_CODE) = [prmDESTCODE]) AND 
        ((SUMMARY.TGL_DATA) >= [prmSTARTDATE] And (SUMMARY.TGL_DATA) <= [prmENDDATE])
      )
GROUP BY 
    SUMMARY.DEST_CITY, 
    SUMMARY.DESTINATION, 
    SUMMARY.TGL_DATA, 
    SUMMARY.ORIGIN, 
    SUMMARY.ORIGIN_CODE, 
    SUMMARY.DEST_CODE, 
    SUMMARY.CNOTE_SERVICES_CODE;

我的问题是:

如何给查询参数赋默认值?我希望查询即使在我没有为参数赋值时也能给我结果(我想在我没有为参数赋值时显示所有记录)。

我的一些 C# 代码:

OleDbCommand accessCommand = new OleDbCommand();
            System.Data.DataTable dt = new System.Data.DataTable();
            accessCommand = new OleDbCommand(query, mycon);
            accessCommand.Parameters.AddWithValue("@prmORIGINCODE", "BDO");
            accessCommand.Parameters.AddWithValue("@prmORIGIN", "BDO10000");
            accessCommand.Parameters.AddWithValue("@prmSERVICECODE", "REG15");
            accessCommand.Parameters.AddWithValue("@prmORIGINCODE", "BDO");
            using (OleDbDataReader myReader = accessCommand.ExecuteReader())
            {
                DataTable myTable = new DataTable();
                myTable.Load(myReader);
                return myTable;
            }

您可以更改数据库的设计。 select 列在设计模式中并为其设置默认值。如果你没有为这个参数写一个具体的值,默认值将被考虑。