본문 바로가기
728x90
반응형

분류 전체보기295

MSSQL Server] 1. Lock Types 개발자에게 도전적인 과제 중 하나는, multi-user 환경에서 시스템을 어떻게 매끄럽게 동작하게 하는가 이다. 개발환경에서는 완벽하게 동작하던 코드도, 수많은 사람들이 접속하는 환경에서는 문제가 생긴다. 그 이유로는 timeouts, deadlocks 등이 있다. SQL Server가 낮은 단계의 read uncommitted level로 사용하더라도 locking, blocking, deadlock은 여전히 발생한다. lock types에 대해 알아보자. lock이란 무엇인가? 간단히 말해서, in-memory structure이다. 이 structure는 onwer, type, 보호하는 row, page, table, file, database등을 연결하는 resource hash를 갖는다. SQ.. 2023. 8. 7.
MSSQL] Schema Locks DB 엔진 isolation 수준 Read uncommitted : 물리적으로 손상된 데이터만 읽지 않음 Read committed : 이전에 읽은 수정되지 않은 데이터를 읽을 수 있음, SQL Server 기본수준 Schema Lock Sch-S(스키마 안정성 잠금) : SQL Server DB 엔진은 쿼리를 컴파일하고 실행할 때 스키마 안정성(Sch-S) 잠금을 사용합니다. 배타적 잠금등의 트랜잭션 잠금을 차단하지 않습니다. transaction isolation 수준에 상관없이 발생한다. Sch-M을 제외한 모든 Lock과 호환된다. 테이블을 생성하고, 데이터를 추가하였다. create table dbo.LockData ( Id int not null, Placeholder char(200) not.. 2023. 8. 2.
.NET Core MVC] EF Core - 3.정렬, 검색, 페이징 StudentsController.cs public async Task Index(string sortOrder, string currentFilter, string searchString, int? pageNumber) { int pageSize = 3; if(searchString != null) { pageNumber = 1; } else { searchString = currentFilter; } ViewData["CurrentSort"] = sortOrder; ViewData["NameSortParm"] = String.IsNullOrEmpty(sortOrder) ? "name_desc" : ""; ViewData["DateSortParm"] = sortOrder == "Date" ? "date.. 2023. 8. 1.
.NET Core MVC] EF Core - 2.CRUD 상세화면 public async Task Details(int? id) { if (id == null) { return NotFound(); } // null-forgiving operator(!)를 사용해서 compiler에러를 없앤다. // !를 너무 자주 사용해야 한다면, non-nullable로 바꾸고 Fluent API 또는 Data Annotation을 통해서 optional 구성할 수 있다. var student = await _context.Students .Include(s => s.Enrollments!) .ThenInclude(e => e.Course) .AsNoTracking() .FirstOrDefaultAsync(m => m.ID == id); if (student == null.. 2023. 7. 31.
ASP.NET MVC] RedirectToAction 에서 nameof 사용하기 ASP.NET MVC 웹앱에서 entity 추가, 수정, 삭제 후 RedirectToAction() 함수를 사용할 수 있다. 아래는 Edit() 함수를 예로 들었다. [HttpPost] public async Task Edit(ReferenceEditModel model) { if (!ModelState.IsValid) { await _referenceService.FillEditModelClassifies(model); return View("Edit", model); } await _referenceService.SaveReference(model, User.Identity.Name); return RedirectToAction("Index"); } 위 소스를 nameof를 사용하여, 아래와 같이 바.. 2023. 7. 28.
.NET Core MVC] EF Core - 1.기본설정(Model, DbContext) MS Tutorial을 따라해보았다~ Contoso University web app을 만들어보자. 개발환경 Visual Studio Code MS SQL Server Express : 설치방법은 아래 링크 참조 https://bigexecution.tistory.com/252 .NET 7 SDK 설치 : 설치파일 링크는 아래에 https://dotnet.microsoft.com/en-us/download/dotnet/7.0 EF Core Nuget Packages 설치 Microsoft.EntityFrameworkCore : EF Core basic functionality Microsoft.EntityFrameworkCore.Relational : Common relational database fu.. 2023. 7. 27.
728x90
반응형