Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Изтриване на големи количества данни от SQL Server 2008

Въпросът ви е доста неясен, но мисля, че казвате следното:

  • Мога да ВМЪКНА данни в моята база данни
  • АКТУАЛИЗИРАНЕТО на моите данни изглежда трудно, така че бих предпочел просто да ИЗТРИЯ и след това да ВМЪКНА отново (защото вече съм написал този код)

Бих казал, че това е лоша идея поради следните причини (и без съмнение много други):

  • Дори ако просто ИЗТРИЕТЕ, пак трябва да идентифицирате правилните редове за изтриване, да изтриете от таблици в правилния ред и т.н. Така че е малко вероятно да спестите много време така или иначе
  • Ще добавите ненужна сложност и допълнителна работа по поддръжка на приложението:обработка на транзакции, допълнителен код за поддръжка, промени в разрешенията и т.н.
  • Добавянето на логика от страна на сървъра към базата данни под формата на тригери и/или процедури ще стане по-трудно, тъй като DELETE вече не означава непременно DELETE, може да означава началото на UPDATE (имам предвид логично, а не физически) и това е огромна болка за поддръжка, както и потенциално нарушаване на всеки код, следи или одити, които са базирани на DML действия или събития
  • Базата данни ще трябва да направи повече регистриране, защото сте разделили една операция на две

Може би имате основателни причини да искате да избегнете АКТУАЛИЗАЦИЯ, но „трудно е да се пише“ не трябва да е една от тях (извинете ме, ако прекалено опростявам ситуацията ви).

Може да получите по-полезен отговор, ако обясните какво точно е „трудно“, дадете малко информация за това какво означава „голямо количество данни“, покажете някои структури на таблици и код, които илюстрират вашите затруднения и т.н.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Вмъкнете няколко реда в една колона

  2. MONTH() Примери в SQL Server (T-SQL)

  3. Инсталиране на SQL Server 2008

  4. GROUP BY за комбиниране/свързване на колона

  5. SQL - изберете отделни записи в едно поле с най-високи записи от друго поле