create table Users ( id int identity(1, 1) primary key, name nvarchar(20) not null, passWord nvarchar(20) not null ) use Student go
create table Users ( id int identity(1, 1) primary key, name nvarchar(20) not null, password nvarchar(20) not null )
1.帶輸入參數的存儲過程 view plaincopy to clipboardprint? create procedure proc_login @name nvarchar(20), @password nvarchar(20) as begin select * from Users where name = @name and password = @password end go create procedure proc_login @name nvarchar(20), @password nvarchar(20) as begin select * from Users where name = @name and password = @password end go
2.帶輸入輸出參數的存儲過程 view plaincopy to clipboardprint? create procedure proc_login @name nvarchar(20), @password nvarchar(20), @message nvarchar(50) output //用于輸出用戶登錄的信息 as begin //判斷用戶名是否存在 if exists (select * from Users where name = @name) begin //判斷密碼是否正確 select * from Users where name = @name and password = @password //返回的行數〉0 if @@rowcount > 0 begin set @message = '登錄成功!' end else begin set @message = '密碼錯誤!' end end else begin set @message = '用戶名不存在!' end //在過程中如果有錯誤 if @@error <> 0 begin set @message = '登錄失敗!' end end go create procedure proc_login @name nvarchar(20), @password nvarchar(20), @message nvarchar(50) output //用于輸出用戶登錄的信息 as begin //判斷用戶名是否存在 if exists (select * from Users where name = @name) begin //判斷密碼是否正確 select * from Users where name = @name and password = @password //返回的行數〉0 if @@rowcount > 0 begin set @message = '登錄成功!' end else begin set @message = '密碼錯誤!' end end else begin set @message = '用戶名不存在!' end //在過程中如果有錯誤 if @@error <> 0 begin set @message = '登錄失??!' end end go
調用帶輸入輸出參數的存儲過程
view plaincopy to clipboardprint? //數據層的登錄方法 public static User Login(string name, string password, out string message) { User user = null; using (SqlConnection conn = new SqlConnection(connectionString)) { SqlCommand cmd = new SqlCommand("proc_login", conn); cmd.CommandType = CommandType.StoredProcedure; //指定調用存儲過程
3.帶返回值得存儲過程 view plaincopy to clipboardprint? create procedure proc_login @name nvarchar(20), @password nvarchar(20) as declare @message nvarchar(50) output //用于返回用戶登錄的信息 begin //判斷用戶名是否存在 if exists (select * from Users where name = @name) begin //判斷密碼是否正確 select * from Users where name = @name and password = @password //返回的行數〉0 if @@rowcount > 0 begin set @message = '登錄成功!' end else begin set @message = '密碼錯誤!' end end else begin set @message = '用戶名不存在!' end //在過程中如果有錯誤 if @@error <> 0 begin set @message = '登錄失??!' end return @message end go create procedure proc_login @name nvarchar(20), @password nvarchar(20) as declare @message nvarchar(50) output //用于返回用戶登錄的信息 begin //判斷用戶名是否存在 if exists (select * from Users where name = @name) begin //判斷密碼是否正確 select * from Users where name = @name and password = @password //返回的行數〉0 if @@rowcount > 0 begin set @message = '登錄成功!' end else begin set @message = '密碼錯誤!' end end else begin set @message = '用戶名不存在!' end //在過程中如果有錯誤 if @@error <> 0 begin set @message = '登錄失??!' end return @message end go
調用帶返回值得存儲過程 view plaincopy to clipboardprint? //數據層的登錄方法 public static User Login(string name, string password, out string message) { User user = null; using (SqlConnection conn = new SqlConnection(connectionString)) { SqlCommand cmd = new SqlCommand("proc_login", conn); cmd.CommandType = CommandType.StoredProcedure; //指定調用存儲過程