asp.net access添加返回自递增id的实现方法第1/3页

 更新时间:2008年08月07日 23:26:52   作者:   我要评论
今天花了一点时间研究了这个问题,除此之外,还顺带研究了小孔子cms添加数据的过程,access添加返回自递增id也是从小孔子cms中研究出来的。
先看界面:


添加后数据库:


而所要执行的语句:
复制代码 代码如下:

string name_    = this.tbxUseName.Text.Trim();    
string webname_ = this.tbxWebName.Text.Trim();    
string url_ = this.tbxUrl.Text.Trim();    
AddFieldItem("news_Title", name_);    
AddFieldItem("news_Source",webname_);    
AddFieldItem("news_Anthor",url_);    
common.salert("添加成功,添加后的ID为" + insert("db_news").ToString());    

当我看完小孔子cms对插入数据的处理后,自我感觉.net水平还一直停留在asp中。下面结合代码讲讲:
       需要说明的是,小孔子cms在插入时使用的是多层架构,而这篇文章主要着重讲解的是学习,所以我就没弄成多层的了。插入时采用了参数化的过程,类似sql的存储过程;在实际应用中插入数据十分简单,正如上面代码所显示的。

先讲一个类[DbKeyItem]:
复制代码 代码如下:

/// <summary>    
/// 数据表中的字段属性:字段名,字段值    
/// </summary>    
public class DbKeyItem    
{    

    /// <summary>    
    /// 字段名称    
    /// </summary>    
    public string fieldName;    

    /// <summary>    
    /// 字段值    
    /// </summary>    
    public string fieldValue;    

    public DbKeyItem(string _fieldName, object _fieldValue)    
    {    
        this.fieldName = _fieldName;    
        this.fieldValue = _fieldValue.ToString();    
    }    
}   

这个类包含两个属性:
1、fieldName:字段名
2、fieldValue:字段值

这个类主要用于: 
复制代码 代码如下:

protected ArrayList alFieldItems = new ArrayList(10);    

/// <summary>    
/// 添加一个字段/值对到数组中    
/// </summary>    
public void AddFieldItem(string _fieldName, object _fieldValue)    
{    
    _fieldName = "[" + _fieldName + "]";    
    //遍历看是否已经存在字段名    
    for (int i = 0; i < this.alFieldItems.Count; i++)    
    {    
        if (((DbKeyItem)this.alFieldItems[i]).fieldName == _fieldName)    
        {    
            throw new ArgumentException("字段已经存在");    
        }    
    }    
    this.alFieldItems.Add(new DbKeyItem(_fieldName, _fieldValue));    
}   

相关文章

最新评论