关于SQL语句的自动生成

发表于:2008-4-03 12:54

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:PeterXu    来源:PeterXu 的博客

        虽然在DotNet Framework3.5 面世以后,可通过LINQ支持SQL的直接查询,但LINQ只支持SQL系列的,SQL2K,SQL2K5,对于ACCESS,ORACLE,MYSQL等不支持。同时平常的一些工具的创作,对于我们的软件水平也大有好处

        下面附上DBACCESS的整套代码,供大家分享

   public interface IClause
    
{
        
void Add(string name, object val);
        
void AddWhere(string name, object val);
        
void Clear();
        
string TableName set;}
    }


    
public abstract class ClauseFactory
    
{
        
public enum Flag
        
{
            Insert,
            Update,
            Select,
            Delete,
        }


        
#region Create

        
public static IClause Create(string table, Flag category)
        
{
            BaseClause ret 
= null;
            
switch (category)
            
{
                
case Flag.Insert:
                    ret 
= new Insert();
                    
break;

                
case Flag.Update:
                    ret 
= new Update();
                    
break;

                
case Flag.Select:
                    ret 
= new Select();
                    
break;

                
case Flag.Delete:
                    ret 
= new Delete();
                    
break;

                
default:
                    
break;
            }

            
if (ret != null)
            
{
                ret.TableName 
= table;
            }

            
return ret;
        }


        
#endregion


        
#region BaseClause

        
private abstract class BaseClause : IClause
        
{
            
private string m_strTable = string.Empty;
            
private Where m_oWhere = new Where();

            
protected BaseClause()
            
{
                
this.m_strTable = string.Empty;
                
this.Clear();
            }


            
public virtual void Add(string name, object val)
            
{
            }

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号