Dapper 학습노트(3) - 추가, 삭제, 수정, 검색
데이터베이스에 다음 세 개의 테이블을 만듭니다.
1 CREATE TABLE [dbo].[T_User]
2 (
3 [UserId] [int] IDENTITY(1, 1) PRIMARY KEY NOT NULL,
4 [Username] [nvarchar](256) NOT NULL,
5 [Password] [nvarchar](500) NULL,
6 [Email] [nvarchar](256) NULL,
7 [PhoneNumber] [nvarchar](30) NULL,
8 )
9
10 CREATE TABLE [dbo].[T_Role]
11 (
12 [RoleId] [int] IDENTITY(1, 1) PRIMARY KEY NOT NULL,
13 [RoleName] [nvarchar](256) NOT NULL,
14 )
15
16 CREATE TABLE [dbo].[T_UserRole]
17 (
18 [Id] [int] IDENTITY(1, 1) PRIMARY KEY NOT NULL,
19 [UserId] [int] FOREIGN KEY REFERENCES [dbo].[T_User] ([UserId]) NOT NULL,
20 [RoleId] [int] FOREIGN KEY REFERENCES [dbo].[T_Role] ([RoleId]) NOT NULL
21 )
이번 편에서는 T_만 사용됩니다.Role 시계, 나머지 시계는 다음 글에서 언급될 것입니다.
2. 실체 클래스 만들기
1 public class User
2 {
3 public User()
4 {
5 Role = new List();
6 }
7
8 public int UserId { get; set; }
9 public string UserName { get; set; }
10 public string Password { get; set; }
11 public string Email { get; set; }
12 public string PhoneNumber { get; set; }
13 public List Role { get; set; }
14 }
15
16 public class Role
17 {
18 public int RoleId { get; set; }
19 public string RoleName { get; set; }
20 }
실체 클래스를 만들 때 속성 이름은 반드시 데이터베이스 필드와 일일이 대응해야 한다.이 편에서는 Role 실체 클래스만 사용되며, User 실체 클래스는 후속 문장에서 언급되고 어느 정도 수정될 수 있습니다.
3. 조작
추가, 삭제, 수정, 검색 작업을 하기 전에 데이터베이스와의 연결을 구축해야 한다. 구체적인 코드는 다음과 같다.
1 private static readonly string connectionString = @"Data Source=.;Initial Catalog=test;User Id=sa;[email protected]";
2
3 private SqlConnection OpenConnection()
4 {
5 SqlConnection connection = new SqlConnection(connectionString);
6 connection.Open();
7 return connection;
8 }
1. 개체 목록 조회
1 private List QueryRoleData()
2 {
3 using (IDbConnection con = OpenConnection())
4 {
5 string query = @"select * from T_Role";
6 return con.Query(query, null).ToList();
7 }
8 }
2. 엔티티 추가
1 private int AddRole()
2 {
3 using (IDbConnection con = OpenConnection())
4 {
5 Role role = new Role();
6 role.RoleName = " ";
7 string strSql = @"insert into T_Role(RoleName)values(@RoleName)";
8 int result = con.Execute(strSql, role);
9 return result;
10 }
11 }
3. 엔티티 수정
1 private int UpdateRole(Role role)
2 {
3 using (IDbConnection con = OpenConnection())
4 {
5 role.RoleName = " ";
6 string query = "update T_Role set RoleName=@RoleName where RoleId=@RoleId";
7 return con.Execute(query, role);
8 }
9 }
4. 엔티티 삭제
1 private int DeleteRole(Role role)
2 {
3 using (IDbConnection con = OpenConnection())
4 {
5 string query = "delete from T_Role where RoleId=@RoleId";
6 return con.Execute(query, role);
7 }
8 }
다음으로 전송:https://www.cnblogs.com/mengshi/p/4778103.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.