我注意到,DevForce执行的数据库查询用引号将数据库对象包含在查询中(例如,从“SCHEMA_NAME”.“TABLE_NAME”中选择*)。我只想问一问,DevForce是否有办法不这么做。
我目前使用的是DevForce经典3.7.5.1。
谢谢。
发布于 2015-03-24 19:11:12
DevForce经典使用“提供程序助手”来确定SQL语句的格式。使用中的默认助手由连接字符串决定,但通常是OleDbProviderHelper的一个实例。要更改默认逻辑,可以根据需要对OleDbProviderHelper或其他帮助程序进行子类。
在这种情况下,要更改标识符的格式,可以使用类似于以下内容的内容:
public class CustomProviderHelper : IdeaBlade.Rdb.OleDbProviderHelper {
public override string FormatIdentifier(string identifier) {
return identifier;
}
}此方法的默认逻辑用base.IdentifierPrefix和base.IdentifierSuffix值包装标识符,您也可以重写这些值。在上面的示例中,我只删除前缀和后缀的所有用法,但是您可以做任何对您最有用的事情。
如果您将类放置在指定为RdbKey的探测程序集之一的服务器上的程序集中,则DevForce将找到您的自定义实现。
https://stackoverflow.com/questions/29229386
复制相似问题