Dzisiejszy wpis jest zainspirowanym jednym z ostatnich code review jaki robiłem. Zauważyłem, że gdy pracujemy z Entity Framework często niektóre rzeczy zaczynamy robić nieefektywnie w stosunku do tego, jakbyśmy zrobili to w chociażby w przypadku ADO.NET. Taką właśnie czynnością jest aktualizowanie oraz usuwanie obiektów z bazy.Aktualizacja obiektu z jego pobraniem Standardowo, gdy zaczynamy uczyć się pracować z Entity Framework, do aktualizacji obiektu możemy ...
Bazy danych i XML 2331 dni, 1 godzinę, 52 minuty temu 197 źrodło rozwiń
Many web applications use databases for persistent data storage, and using Object Relational Mapping (ORM) frameworks is a common way to develop such database-backed web applications. Unfortunately, developing efficient ORM applications is challenging, as the ORM framework hides the underlying database query generation and execution. This problem is becoming more severe as these applications need to process an increasingly large amount of persistent data. Recent research has targeted specific aspects of ...
Bazy danych i XML 2331 dni, 1 godzinę, 52 minuty temu 42 źrodło rozwiń
For some time now I am working quite heavily on AWS in my current project. And of course we try and give our systems the shape of micro services (who wouldn't?). When using micro services architecture it is very often a good practice to not use a single database to which every single service is connecting whenever it needs data. Instead it is recommended to give every service which uses data its own database to store its model. AWS give us a very interesting NoSql database named DynamoDb which purpose is...
Bazy danych i XML 2373 dni, 3 godziny, 1 minutę temu 27 źrodło rozwiń
I have impression that there is not enough talk about denormalization at universities. One gets the impression that normalization is a standard and should be used anytime, anywhere.
Bazy danych i XML 2393 dni, 2 godziny, 21 minut temu 58 źrodło rozwiń
We have many solutions for versioning data through time. One of the cleanest, most transparent and pretty effortless in my opinion are Temporal Tables which are available in MS SQL 2016+. What’s really great about that approach is that unless you need to retrieve state from the certain point in time or browse through changes in a specified time range, you can query against a versioned table in an exactly same way that you would do with any other one.
Bazy danych i XML 2400 dni, 51 minut temu 77 źrodło rozwiń
Recently I’ve had occasion to work much more than usually with NHibernate. This is a really great ORM and a very mature project, but when you make a mistake it informs you about that in a very generic way (in most cases). The problem that hunted me for a few days was the issue with field length constrains (which was caused by insufficient and inconsistent REST API validation). When there was a discrepancy between declared field length in NHibernate mapping and validation logic (or the vali...
Bazy danych i XML 2403 dni, 2 godziny, 54 minuty temu 52 źrodło rozwiń
My last blog post was about a feature in SQL Server called Row Level Security Policy. It’s quite simple and known feature for people who’re working directly with databases. But most .NET developers are using ORM of some kind to work with DB, and some of them tend to be blind to stuff that is not available through object model in an easy way. And since Entity Framework is most popular ORM in C# environment and my ORM of choice in most cases, I’ll show you how to use RLS in it.
Bazy danych i XML 2454 dni, 14 godzin, 38 minut temu 105 źrodło rozwiń
In some scenarios, like single-database multi-tenant or soft delete ones, you could want to restrict access to your rows based on a value stored in one or more values stored in your columns in example IsDeleted flag or some kind of TenantId column. Since SQL Server 2016 we have a wonderful tool for that called Row Level Security Policy.
Bazy danych i XML 2469 dni, 23 godziny, 59 minut temu 114 źrodło rozwiń
Prosty i czytelny sposób na generowanie dokumentów xml - Linq to Xml
Bazy danych i XML 2479 dni, 1 godzinę, 44 minuty temu 212 źrodło rozwiń
Pierwszy artykuł z serii jak budować wydajniejsze zapytania przy użyciu Entity Frameworka. W tym artykule przedstawię informacje, które kroki przetwarzania zapytania przez Entity Framworka mogą być usprawnione.
Bazy danych i XML 2510 dni, 1 godzinę, 9 minut temu 203 źrodło rozwiń
Jednym z najczęstszych błędów popełnianych przez developerów T-SQL’a jest tworzenie tabel bez indeksów klastrowych. Powody są różne: pośpiech, brak dobrych nawyków lub po prostu wewnętrzne przeświadczenie, że taki indeks nie jest konieczny. W tym artykule chcę udowodnić, że tworzenie takich indeksów powinno wejść nam w krew już podczas zakładania struktury nowej tabeli. Jeśli tego nie zrobimy, kon...
Bazy danych i XML 2526 dni, 2 godziny, 36 minut temu 295 źrodło rozwiń
Czy jako administrator baz danych zetknąłeś się z pytaniem: czy z bazą wszystko OK? Pytanie takie zwykle pada, kiedy użytkownicy aplikacji zauważają spowolnienia w pracy systemu. I jak to w takich sytuacjach bywa, trzeba znaleźć przyczynę. Właśnie diagnoza jest największym wyzwaniem: rozpoznanie, czy bieżący stan bazy danych jest przyczyną, czy raczej skutkiem powstałych problemów? Na...
Bazy danych i XML 2526 dni, 2 godziny, 36 minut temu 153 źrodło rozwiń
Po co nam monitoring? Ktoś może powiedzieć, że chce wiedzieć o wszystkich problemach, które pojawią się w jego systemie. Poszedłbym jednak dalej: monitoring miałby, w pewnych przypadkach, odpowiednio wcześniej sygnalizować ewentualność takich problemów. Potrzebujemy do tego odpowiedniego zestawu liczników, które zbieramy i ...
Bazy danych i XML 2526 dni, 2 godziny, 36 minut temu 77 źrodło rozwiń
Bazy danych i XML 2542 dni, 2 godziny temu 38 źrodło rozwiń
Written by Dawid Sibińskion I’ve recently met a weird issue with T-SQL scripts at work and would like to share it with you today 🙂 On daily basis I work a lot with MS SQL Server databases. We often create many T-SQL objects (tables, views, procedures, functions) and because of some reasons we cannot use Entity Framework or another from widely available ORMs. Nonetheless, all objects created in the database must be kept in the form of SQL scripts (files) containing set of CREATE, ALTER, INSERT,...
Bazy danych i XML 2553 dni, 53 minuty temu 69 źrodło rozwiń
Co mają wspólnego StarWars i bazy danych? Jak to co? Walkę z gwiazd(k)ami 🙂
Bazy danych i XML 2577 dni, 15 minut temu 160 źrodło rozwiń
W obecnych czasach trudno sobie wyobrazić większą aplikację bez jakiejś bazy danych działającej pod spodem. Zaczynając nowy projekt możemy wprost przebierać systemach jak Oracle, MySql, SqlServer, AriaDB, Postgres DB, SQLite, a do tego jeszcze dochodzą przecież wszystkie bazy NoSql, które z każdym rokiem zyskują na popularności. Kiedy sam migrowałem w stronę .NET-a, zastanawiałem się na jakiej bazie danych przyjdzie mi pracować najczęściej. Podejrzewałem, że SqlServer-a nie uda mi się uruchomić na moim M...
Bazy danych i XML 2583 dni, 2 godziny, 53 minuty temu 99 źrodło rozwiń
Storing data in multitenant environments always required some consideration. With Cosmos DB we have 2 options that are really worthy of our attention so let’s weight some pros and cons.
Bazy danych i XML 2590 dni, 2 godziny, 42 minuty temu 79 źrodło rozwiń
How to simply search the entire database knowing only the parameters/names of the returned values?
Bazy danych i XML 2592 dni, 4 godziny, 36 minut temu 167 źrodło rozwiń
Porady w tsql: jak uzyskać pierwszy/ostatni dzień w roku / miesiącu oraz inne operacje na datach. Dodatkowo wytłumaczenie zasad działania.
Bazy danych i XML 2596 dni, 3 godziny, 58 minut temu 145 źrodło rozwiń