国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

asp.net中獲取新增加記錄的ID Access版

2020-01-18 00:32:20
字體:
來源:轉載
供稿:網友
這里參考了Erist.Protal里的代碼
復制代碼 代碼如下:

/// <summary>
/// 增加新的文章
/// </summary>
/// <param name="ArticleTitle"></param>
/// <param name="Author"></param>
/// <param name="ArticleFrom"></param>
/// <param name="Creator"></param>
/// <param name="ModifyBy"></param>
/// <param name="Content"></param>
/// <param name="ChannelID"></param>
/// <param name="IsOnTop"></param>
/// <param name="IsCommend"></param>
/// <param name="IsCheck"></param>
/// <param name="Keyword"></param>
/// <param name="ArticleIntroduction"></param>
/// <returns>新增加文章的ID</returns>
public int AddArticle(string ArticleTitle,
string Author,
string ArticleFrom,
int Creator,
int ModifyBy,
string Content,
int ChannelID,
bool IsOnTop,
bool IsCommend,
bool IsCheck,
string Keyword,
string ArticleIntroduction)
{
int ArticleID =-1;
//格式化HTML標記
ArticleTitle=System.Web.HttpUtility.HtmlEncode(ArticleTitle);
Author=System.Web.HttpUtility.HtmlEncode(Author);
Keyword=System.Web.HttpUtility.HtmlEncode(Keyword);

OleDbConnection OleCon=new OleDbConnection(Globals.ConnectString);
OleDbCommand OleCmd=new OleDbCommand();
OleCmd.CommandType=System.Data.CommandType.StoredProcedure;
OleCmd.Connection=OleCon;
OleCmd.CommandText="AddArticle";
//取得下一個ID號
ArticleID= Erist.Common.Data.DataProvider.GetAutoID("ArticleID","Article",Globals.ConnectString);
OleCmd.Parameters.Add("ArticleID",ArticleID);
OleCmd.Parameters.Add("ArticleTitle",ArticleTitle);
OleCmd.Parameters.Add("Author",Author);
OleCmd.Parameters.Add("ArticleFrom",ArticleFrom);
OleCmd.Parameters.Add("Creator",Creator);
OleCmd.Parameters.Add("ModifyBy",ModifyBy);
OleCmd.Parameters.Add("Content",Content);
OleCmd.Parameters.Add("ChannelID",ChannelID);
OleCmd.Parameters.Add("IsOnTop",IsOnTop);
OleCmd.Parameters.Add("IsCommend",IsCommend);
OleCmd.Parameters.Add("IsCheck",IsCheck);
OleCmd.Parameters.Add("Keyword",Keyword);
//2004-2-2將文章增加簡介屬性 姜勇
OleCmd.Parameters.Add("ArticleIntroduction",ArticleIntroduction);
//執行
Erist.Common.Data.DataProvider.ExecNonQueryOle(OleCmd);
return ArticleID;
}

注意看背景色為橙色的地方調用了Erist.Common.Data.DataProvider.GetAutoID()
下面是此方法的代碼
復制代碼 代碼如下:

/**//// <summary>
/// 取得數據集
/// </summary>
/// <param name="SqlCmd">執行命令的SqlCommand</param>
/// <returns>返回取得的數據集</returns>
public static DataSet GetDataSetOle(OleDbCommand OleCmd )
{
OleDbDataAdapter t_DataAdapter ;
DataSet t_DataSet=new DataSet();
try
{
if (OleCmd.Connection.State != ConnectionState.Open) OleCmd.Connection.Open();
t_DataAdapter = new OleDbDataAdapter(OleCmd);
t_DataAdapter.Fill(t_DataSet);
return t_DataSet;
}
catch(Exception ex )
//捕獲數據層錯誤并返回給上一層。
{
throw ex;
}
finally
{
//斷開鏈接
if (OleCmd.Connection.State == ConnectionState.Open) OleCmd.Connection.Close();

}
}

/**//// <summary>
/// 取得某一表的最大字段值
/// </summary>
/// <param name="FieldName"></param>
/// <param name="TableName"></param>
/// <returns></returns>
public static int GetAutoID(string FieldName ,string TableName,string ConnectString)
{
DataSet ds;
OleDbConnection OleCon=new OleDbConnection(ConnectString);
OleDbCommand OleCmd=new OleDbCommand();
OleCmd.CommandText="Select Max(" + FieldName +") as MaxID from " + TableName;
OleCmd.CommandType=System.Data.CommandType.Text;
OleCmd.Connection=OleCon;
ds=GetDataSetOle(OleCmd);
if( ds.Tables[0].Rows[0][0] == DBNull.Value)
{
return 1;
}
else
{
return int.Parse(ds.Tables[0].Rows[0][0].ToString())+ 1;
}
}

根據傳過來的FieldName 和TableName 來讀數據庫當前最大的FieldName 如果沒有返回1
有則在此基礎上+1 因為是要獲取要添加記錄的唯一FieldName
此處FieldName是ArticleID
此方法還是不錯的.
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 海安县| 从化市| 库伦旗| 甘谷县| 金平| 吴桥县| 枣庄市| 西宁市| 敦化市| 宁南县| 黄大仙区| 文水县| 鄄城县| 原阳县| 南康市| 巩义市| 九龙城区| 井陉县| 凤山县| 六安市| 台东县| 桑植县| 鄂伦春自治旗| 峡江县| 平顶山市| 视频| 东海县| 连山| 达孜县| 凤城市| 黔南| 柳江县| 顺义区| 汉中市| 大竹县| 道孚县| 天柱县| 邹平县| 湄潭县| 都兰县| 密云县|