zoukankan      html  css  js  c++  java
  • sql 存储过程,最简单的添加和修改

    数据库表结构

     《1》新增数据,并且按照"name" 字段查询,如果重复返回“error”=-100 ,如果成功返回ID,如果失败ID=0

    USE [数据库]
    GO
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    ALTER procedure [dbo].[存储过程名称]
    (
    @name varchar(50),
    @state int,
    @capbility int,
    @ip varchar(50),
    @port int
    )
    AS
    SET NOCOUNT ON;
    BEGIN
    declare @count int;
    declare @id int;
    --判断此服务器是否已经注册
    select @count=COUNT(*) from serverlist where name =@name;
    if(@count>0)--此服务器已经注册过
    BEGIN
    select "ERROR" = -100; --此服务器已经注册过
    END else
    BEGIN
    insert into serverlist(name,[state],capbility,ip,port) values (@name,@state,@capbility,@ip,@port);select @@identity;
    select @id;
    END
    END

    注意,代码执行此存储过程中,只查询表中第一个字段即可,string id=表.rows[0][0].tostring().trim(); 

    《2》 修改数据,依然查询词数据是否已经存在

    USE [数据库]
    GO
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    ALTER procedure [dbo].[存储过程名称]
    (
    @name varchar(50),
    @state int,
    @capbility int,
    @ip varchar(50),
    @port int,
    @id int
    )
    AS
    SET NOCOUNT ON;
    BEGIN
    declare @count int;
    declare @return int;
    select @count=COUNT(*) from serverlist where name =@name and ID<>@id;
    if(@count>0)
    BEGIN
    select "error"=-100;
    end
    begin
    select @count=COUNT(*) from serverlist where id =@id
    if(@count>0)
    begin
    update serverlist set name=@name,[state]=@state,capbility=@capbility,ip=@ip,port=@port where ID=@id;
    set @return = 1;
    end else
    begin
    set @return = 0;
    end
    end
    select @return;
    END


  • 相关阅读:
    gmap4rails
    gmap4rails
    devise的使用的中文教程
    对每个 IP 访问量实时监控。
    下载文件总结
    安装Wamp后 Apache无法启动的解决方法
    CSS,fontfamily,好看常用的中文字体
    TP框架下载功能  不想下天桥  博客园
    用PHP,怎么获取PHP.ini中的文件上传最大的字节数。也就是默认的2M
    这个技术wiki的内容很不错
  • 原文地址:https://www.cnblogs.com/wang-123/p/3741610.html
Copyright © 2011-2022 走看看