Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 14562|Отговор: 5

[Интерфейс] C# GZipStream взаимодейства с базата данни и извършва компресия и декомпресия на данни

[Копирай линк]
Публикувано в 26.12.2018 г. 13:36:23 ч. | | |
Този пост беше последно редактиран от sgFengSu на 2018-12-27 16:20

Наскоро, докато работех по проект, попаднах на компресиране на данните от базата данни в .gz файлове и при получаване на компресирания файл за декомпресиране и запис в базата данни, препоръчва се да се пише и декомпресира отделно в класове за извикване, и прикачване на прикаченото към горния клас, PS: Ако използвате SFTP, трябва да добавите Renci.SshNet.dll


Прочетете SQL server данни и компресиране на файлове, основната технология на компресията GZipStream, вижте https://www.itsvse.com/thread-4240-1-1.html за подробности


Разархивирайте файла и го запишете в sqlserver, основната техника
За повече информация относно GZipStream, моля посетете: https://www.itsvse.com/thread-4831-1-1.html
SqlBulkCopy, за масов импорт
Ако има заглавие, използвайте restOfStream.StartsWith("1"), за да премахнете заглавието, вижте последния код (старият код не използваше SqlBulkCopy, а се записваше чрез изпълнение на инструкцията insert многократно)

Стар код - разархивирайте файла и записвайте в базата данни



Резултат

Брой участници1MB+1 допринасям+1 Срив причина
Малък боклук + 1 + 1 Много мощно!

Вижте всички оценки





Предишен:Elasticsearch изтрива и индексира всички документни данни
Следващ:Бойни изкуства, обучение на точки цигун и други бойни изкуства (последна актуализация)
 Хазяин| Публикувано в 26.12.2018 г. 13:38:29 ч. |
Забравих да кача прикачения файл

压缩及解压缩.zip (167.94 KB, Брой изтегляния: 6, Цена за продажба: 1 Grain MB)
Публикувано в 26.12.2018 г. 14:07:16 ч. |
Това е много полезно за прехвърляне на базата данни към друг сървър, подобряване на възстановяването след катастрофа и предотвратяване на загуба на данни на една машина.

Спомням си, че автоматичната база данни за архивиране на фон Ruijie се качва на друг сървър чрез FTP протокола, но базата данни не се компресира.

Не знам как наемодателят използва GZipStream за компресиране, например: какъв е размерът на 1G файл след компресия?
 Хазяин| Публикувано в 26.12.2018 г. 22:12:41 ч. |
Сяо Джажа Публикувано на 2018-12-26 14:07
Това е много полезно за прехвърляне на базата данни към друг сървър, подобряване на възстановяването след катастрофа и предотвратяване на загуба на данни на една машина.

Помнете, че автоматичната база данни с резервни копия на фон на Руйджие е ...

1G файлове могат да бъдат компресирани до около 5M
Между другото, има ли функция на сайта за разширяване и стягане на код, така че да има твърде много код на един поглед?
Публикувано в 27.12.2018 г. 13:52:11 ч. |
sgFengSu публикувано на 26.12.2018 22:12
1G файлове могат да бъдат компресирани до около 5M
Между другото, има ли функция на сайта за разширяване и скъсяване на кода, така че да има твърде много код на един поглед...

Е, няма код за разширяване на функцията за свиване...

Толкова е удивително, че 1G може да се компресира до 5M, малко е невероятно
 Хазяин| Публикувано в 27.12.2018 г. 14:46:57 ч. |
Сяо Жажа Публикувано на 27.12.2018 13:52
Е, няма код за разширяване на функцията за свиване...

Удивително е, че 1G може да се компресира до 5M, малко е невероятно...

Разширяване на свиването това може да има
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com