两个问题,
1,一篇文章的下面显示上一篇文章的标题,和下一篇文章的标题.这个功能的sql语句怎么写啊???2,我存入一条数据后如何可以马上就得到存入这条数据的id(此id是数据库自动生成的),考虑到速度和占用少的资源和可能有多个人同时进行操作!谢谢啊!

解决方案 »

  1.   

    1,比方是一篇新闻的内容页,下面会有上一篇和下一篇新闻的标题显示。2,我存入一条数据后如何可以马上就得到存入这条数据的id(此id是数据库自动生成的),考虑到速度和占用少的资源和可能有多个人同时进行操作!
      

  2.   

    在进行完插入后,用select @@IDENTITY就能取出来了,你试试!
      

  3.   

    1)既然有上一篇和下一篇之说,那么肯定记录是以某种形式排序的吧,假设就是时间顺序吧
    取上一条记录或下一条的写法是
    select top 1 * from table1 where id<123 order by createtime desc
    select top 1 * from table1 where id>123 order by createtime 2)insert ......
      select @@identity  (不太记得MS SQL了,不知道有没有拼错,查查帮助)
      

  4.   

    问题1--假设你的新闻内容叫body,标题叫title
    --自定义一个函数
    create function f_coalition(@id int)
    returns varchar(400)
    as
    begin
        declare @return varchar(400)
        set @return = ''
        select @return = @return+title from a where id = @id    
        return @return 
    end
    go
    --然后调用
    select body+' '+dbo.f_coalition(id-1)+' '+dbo.f_coalition(id+1) from a
    问题2
    用select @@identity
    就可以取到刚存入的id