在研究SMARTCLIENT时发现了这样的一个问题到现在也未解决,在CSDN等论坛上也问过
SMARTCLIENT主要是将数据存储在本地以方便实现离线浏览,这对于数据表较少时或是联接比较少时是非常方便的。但我们在做东西时经常需要将N张表,而且根据范式进行规化。这样的本来的一张表就被分离为了多张表。如果采用SQL语句查询将是非常简单的,但由于是离线浏览所以要使用DATASET或是DATAVIEW的查询功能来实现,而不能借助于SQL语句。我在设计时遇到了这样的问题
1、如何查询某时间段内的数据比如2001-1-1 至2002-1-1
SQL:select * from tbl1 where date>'2001-1-1' and date <'2002-1-1'
select * from tbl1 where date between '2001-1-1' and '2002-1-1'
采用DATASET或是DATAVIEW无法实现:(我试过在客户端采用带引号和不带引号的方式来解决可都不成功
2、数据下载到本地后是存储在DATATABLE中的是多个DATATABLE但如何实现将关联表显示在同一DATAGRID也是一个很让人头疼的问题
tbl1
tbl2
在DATAGRID中需要按正常显示
至今为未找到理想答案:( 郁闷ing......
还请各位高手来帮帮忙
SMARTCLIENT主要是将数据存储在本地以方便实现离线浏览,这对于数据表较少时或是联接比较少时是非常方便的。但我们在做东西时经常需要将N张表,而且根据范式进行规化。这样的本来的一张表就被分离为了多张表。如果采用SQL语句查询将是非常简单的,但由于是离线浏览所以要使用DATASET或是DATAVIEW的查询功能来实现,而不能借助于SQL语句。我在设计时遇到了这样的问题
1、如何查询某时间段内的数据比如2001-1-1 至2002-1-1
SQL:select * from tbl1 where date>'2001-1-1' and date <'2002-1-1'
select * from tbl1 where date between '2001-1-1' and '2002-1-1'
采用DATASET或是DATAVIEW无法实现:(我试过在客户端采用带引号和不带引号的方式来解决可都不成功
2、数据下载到本地后是存储在DATATABLE中的是多个DATATABLE但如何实现将关联表显示在同一DATAGRID也是一个很让人头疼的问题
tbl1
tid | 单位 |
1 | 瓶 |
2 | 听 |
tbl2
id | 名称 | tid |
1 | 可口可乐 | 1 |
2 | 青岛啤酒 | 2 |
在DATAGRID中需要按正常显示
编号 | 名称 | 单位 |
1 | 可口可乐 | 瓶 |
2 | 青岛啤酒 | 听 |
还请各位高手来帮帮忙