#region
|
|
using System.Data;
|
using System.Data.Common;
|
using CSFramework.DB;
|
using CSFrameworkV5.Core;
|
|
#endregion
|
|
namespace CSFrameworkV5.DataAccess
|
{
|
/// <summary>
|
/// SQL命令生成器的对象工厂
|
/// </summary>
|
public class SqlGeneratorFactory : ICommandFactory
|
{
|
private IAdoFactory _factory;
|
|
public SqlGeneratorFactory(IAdoFactory factory)
|
{
|
_factory = factory;
|
}
|
|
public DbCommand CreateCommand()
|
{
|
return _factory.CreateCommand("", CommandType.Text);
|
}
|
|
/// <summary>
|
/// 创建命令参数
|
/// </summary>
|
/// <param name="pName">参数名</param>
|
/// <param name="pType">类型</param>
|
/// <param name="pSize">大小</param>
|
/// <param name="sourceColumn">字段名</param>
|
/// <returns></returns>
|
public DbParameter CreateParameter(string pName, DbType pType,
|
int pSize, string sourceColumn)
|
{
|
var p = _factory.CreateParameter(pName, null);
|
p.ParameterName = pName;
|
p.DbType = pType;
|
p.Size = pSize;
|
p.SourceColumn = sourceColumn;
|
return p;
|
}
|
|
public DbParameter CreateTimestampParameter(string pName,
|
string fieldName)
|
{
|
return _factory.CreateTimestampParameter(pName, fieldName);
|
}
|
|
public string ParamSymboName => _factory.ParamSymboName;
|
}
|
}
|