IT技术网www.itjs.cn

当前位置:首页 > 数据库 > SQl Server > 将Access移植到SQL Server

将Access移植到SQL Server

发布时间:2015-11-29 00:00 来源:未知

到SQL Server的Access开发人员面临着很多困难,然而最为棘手的问题是对动态SQL的处理。在Access中,将控件的行指定为一个字符串是相当普通的现象。例如,窗体上包含着很多的选择器(SalesGroup,State/Province/Canton,Beginning Date以及Ending Date等等),Access开发人员一般都会检查这些控件以查看哪些为Null,然后编写SQL语句以删除这些Null值。

通过这种方法连接到SQL Server具有以下几点的缺点:

所有的处理都在客户端完成,而不是在服务器中完成。 解析这些控件和处理SQLq语句的代码显得拖沓冗长。 这一方法容易导致SQL 混入攻击(injection attacks)。

渴望扩展到SQL Server的Access开发人员必须解决两个方面的问题:

1.     识别所有非基于名称查询的记录和行的数据源。

2.     使用名称查询替代所有的查询。

对于动态地处理查询,可以以如下所示的代码处理:

SELECT *

WHERE ColumnOfInterest = Forms("myForm").ControlOfInterest

FROM SomeTables
WHERE ColumnOfInterest = 12345 OR ColumnOfInterest is NULL