Các bạn cứu mình với, mình làm cái store mã khóa chính tự tăng mà nó ko hiện ra trong textbox
VD: maBN kiểu varchar mình làm mỗi lần khi load form lên trên txtMaBN thì sẽ là BN01, BN02, BN03,BN11,...
Code:
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO
ALTER proc [dbo].[THEM_BN]
@hovatendem nvarchar(50),
@tenbn nvarchar(10),
@namsinh datetime,
@tuoi int,
@gioitinh nvarchar(10),
@diachi nvarchar(100),
@nghenghiep nvarchar(50),
@CMND int,
@noilamviec nvarchar(50),
@dantoc nvarchar(10),
@ngoaikieu nvarchar(50),
@doituong nvarchar(50),
@soBHYT varchar(30),
@BHYTtungay varchar(50),
@BHYTdenngay varchar(50),
@phantramchenhlech int,
@hotendemnguoinha nvarchar(50),
@tennguoinha nvarchar(10),
@diachinn nvarchar(100),
@dienthoai int
as
Declare @id int,@mabn varchar(10);
set @id=(select top (1) cast(SUBSTRING(mabn,3,len(mabn)-2) as int)as 'mabn_moi' from BENHNHAN order by mabn_moi desc)+1;
if(@id<10)
begin
set @mabn ='BN0'+cast(@id as varchar(10));
end
else
begin
set @mabn='BN'+cast(@id as varchar(10));
end
insert into BENHNHAN values(@mabn, @hovatendem, @tenbn, @namsinh,@tuoi,@gioitinh,@diachi,@nghenghiep,@CMND,@noilamviec,@dantoc,@ngoaikieu,@doituong,@soBHYT,@BHYTtungay,@BHYTdenngay,@phantramchenhlech,@hotendemnguoinha,@tennguoinha,@diachinn,@dienthoai)
Sau đó gọi store
Code:
public int ThemBenhNhan(string mabn, string hovatendem, string tenbn, DateTime namsinh, int tuoi, string gioitinh, string diachi, string nghenghiep, int CMND, string noilamviec, string dantoc, string ngoaikieu, string doituong,string soBHYT, string BHYTtungay,string BHYTdenngay, int phantramCL, string hotendemnguoinha, string tennguoinha, string diachinn, int dienthoai)
{
SqlCommand com = new SqlCommand("Them_BenhNhan", con);
com.CommandType = CommandType.StoredProcedure;
com.Parameters.Add("@mabn", SqlDbType.VarChar, 10).Value = mabn;
com.Parameters.Add("@hovatendem", SqlDbType.NVarChar, 50).Value = hovatendem;
com.Parameters.Add("@tenbn", SqlDbType.NVarChar, 10).Value = tenbn;
com.Parameters.Add("@namsinh", SqlDbType.DateTime).Value = namsinh;
gọi class
Code:
private void btnThem_Click(object sender, EventArgs e)
{
ClsBenhNhan nd = new ClsBenhNhan();
string mabn = txtMaBN.Text;
string hovatendem;
if (txtHoDemBN.Text != "") hovatendem = txtHoDemBN.Text;
else hovatendem = "";
}
catch { MessageBox.Show("Đó là lý do dữ liệu không được thêm"); }
txtMaBN.Enabled = false;
}
T5 mình nộp bài rùi, làm ok mà giờ đc y/c cao hơn là cái tự tăng này. Khổ zi. Các bạn giúp mình với.