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 [email protected];
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 [email protected] and ID<>@id;
if(@count>0)
BEGIN
select
"error"=-100;
end
begin
select @count=COUNT(*) from serverlist
where id [email protected]
if(@count>0)
begin
update serverlist set
[email protected],[state][email protected],[email protected],[email protected],[email protected] where
[email protected];
set @return = 1;
end else
begin
set @return =
0;
end
end
select @return;
END

时间: 2024-07-30 02:35:02

sql 存储过程,最简单的添加和修改的相关文章

用SQL语句添加删除修改字段

1.增加字段     alter table docdsp     add dspcodechar(200)2.删除字段     ALTER TABLE table_NAME DROP COLUMNcolumn_NAME3.修改字段类型     ALTER TABLE table_name     ALTER COLUMNcolumn_name new_data_type4.sp_rename 改名     EXEC sp_rename '[dbo].[Table_1].[filedName1]

用SQL语句添加删除修改字段、一些表与字段的基本操作、数据库备份等

用SQL语句添加删除修改字段 1.增加字段 alter table docdsp add dspcode char(200) 2.删除字段 ALTER TABLE table_NAME DROP COLUMN column_NAME 3.修改字段类型 ALTER TABLE table_name ALTER COLUMN column_name new_data_type 4.sp_rename 改名 更改当前数据库中用户创建对象(如表.列或用户定义数据类型)的名称. 语法 sp_rename

sql 解析字符串添加到临时表中 sql存储过程in 参数输入

sql 解析字符串添加到临时表中  sql存储过程in 参数输入 解决方法 把字符串解析 添加到 临时表中 SELECT * into #临时表   FROM dbo.Func_SplitOneColumnTabel('001,gf', ',') select * from 表 where ID in (select id from 临时表) Create function [dbo].[Func_SplitOneColumnTabel] (@str nvarchar(max),@split v

sql存储过程几个简单例子

导读:sql存储是数据库操作过程中比较重要的一个环节,对于一些初学者来说也是比较抽象难理解的,本文我将通过几个实例来解析数据库中的sql存储过程,这样就将抽象的事物形象化,比较容易理解. 例1: create proc proc_stu @sname varchar(20), @pwd varchar(20) as select * from ren where [email protected] and [email protected] go 查看结果:proc_stu 'admin','a

40. SQL -- 存储过程(1)

存储过程 存储过程的定义 存储过程(StoredProcedure)是一组为了完成特定功能的SQL 语句集,是利用SQLServer 所提供的Transact-SQL语言所编写的程序.功能是将常用或复杂的工作,预先用SQL语句写好并用一个指定名称存储起来,以后需要数据库提供与已定义好的存储过程的功能相同的服务时,只需调用execute,即可自动完成命令.存储过程是由流控制和SQL 语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,可由应用程序通过一个调用来执行,而且允许用户声明变量 .

向SQL Server 现有表中添加新列并添加描述.

注: sql server 2005 及以上支持. 版本估计是不支持(工作环境2005,2008). 工作需要, 需要向SQL Server 现有表中添加新列并添加描述. 从而有个如下存储过程. (先附上存储过程然后解释) 代码 /********调用方法********** 作用: 添加列并添加列描述信息 调用: exec [SetColumnInfo] '表名', '列名', N'列说明,描述','列类型{默认:NVARCHAR(50)}','列默认值{默认:NULL}' *********

41. SQL -- 存储过程(2)

创建存储过程: 创建不带参数的存储过程 语法: CREATE PROC[EDURE] 存储过程名 AS SQL 和C语言的函数一样,参数可选 参数分为输入参数.输出参数 输入参数允许有默认值 创建步骤: ① 编写SQL语句. ② 测试SQL语句是否正确,并能实现功能要求. ③ 若得到的结果数据符合预期要求,则按照存储过程的语法,创建该建存储过程. ④ 执行该存储过程,验证其正确性. DEMO1:创建一存储过程,要求该存储过程返回学生姓名.所学课程名称和任课教师. CREATE PROCEDURE

finereport报表,使用带参数的sql存储过程,报没有返回数据集的错

原因:在SqlServer数据库中,若定义的存储过程中包含有insert/update等更新操作时,在设计器中对存储过程进行调用时,会提示没有返回数据集的错误. 解决方法:修改存储过程,在begin 后面添加 SET NOCOUNT ON. 不管多复杂的sql存储过程 只需要在第一个大的begin后面添加 如下: ALTER proc [dbo].[proc_enterylist] @qybm varchar(50),@strWhere varchar(2000)='',@stratrow in

jQuery显示SQL存储过程自定义异常信息

学习MVC应用开发,改变了Insus.NET以前ASP.NET的开发习惯,以前开发均是服务器端,而现在使用jQuery的Ajax在实现.想到与考虑了很多问题,也遇上很多问题,一些解决了,一些还留下,望能一一把它们解决. 就如这个问题<Internal Server Error>http://www.cnblogs.com/insus/p/3418942.html 让Insus.NET印象深刻,自己解决它,花上了Insus.NET不少的时间. 今天的博文,Insus.NET就是分享一下更好的解决