我现在做一个插入操作,数据库设置主键ID为非空,可不是自动增长的
我怎么获取数据库表里的主键最大值,也就是说我要知道在我之前插入的那条记录的ID是多少,要不没办法插入。
我怎么获取数据库表里的主键最大值,也就是说我要知道在我之前插入的那条记录的ID是多少,要不没办法插入。
解决方案 »
- 请教oracle数据库编程基础问题,内详
- 高分求助,在线等,关于cookie切换问题!
- C#中set \ get问题,传输传递出了问题!高手帮忙看看!
- 问一个不小的问题,三个月了都还没解决,网上到处都找不到资料,(是关于自定义窗体的).不知道"思归","孟子"之类的高手在不,望能帮上我
- 想转学C#.请问:C++相对于C#来说应该算是一门强大的语言还是一门复杂的语言?另外C++.net又是什么东西,与C++有何区别与联系?
- c#操作excel如何使用模板?
- c#里有类似VB里iif的函数吗?
- 动态调用 VC 写的DLL ,调试时出现提示 PInvokeStackImbalance was detected
- 请问搜索引擎面对这么多链接是如何做排重的
- 正则表达式里替换的问题,如何替换时不影响其它
- 求助:如何使一段程序运行的时候,将程序锁定等待程序的运行?
- c# 最难的bug是什么?
用ADO先得到这个值,再去插入
declare @id int
set @id=(select isnull(max(id),0)+1 from table)
然后用@id作为主键insert
{
SqlConnection con = new SqlConnection(strConn);
con.Open();
string strSQL = "select max(JournalNumber) from Journal";
SqlCommand com = new SqlCommand(strSQL, con);
object obj = com.ExecuteScalar();
if (obj == null || obj.ToString() == "")
{
strJourNO = "0000001";
}
else
{
string strJ = obj.ToString();
strJourNO = (Convert.ToInt64(strJ) + 1).ToString("0000000");
}
con.Close();
return strJourNO;
}