Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.03.28;
Скачать: [xml.tar.bz2];

Вниз

IB или MS SQL Server   Найти похожие ветки 

 
ev   (2002-02-22 21:05) [0]

Сейчес работаю с IB, но думаю перейти на MS SQL Server.
Помогите определиться!
Какие отличия, плюсы, минусы?
С какими компонентами лучше работать?
Плюсы, минусы ADO?


 
Johnmen   (2002-02-22 22:09) [1]

Позволю себе замечание : 3 года назад работал под MS SQL,
потом перешел на IB, а кто-то остался под MS SQL.
Встречаясь с этими челами и обсуждая проблемы, мы приходим к единому мнению - IB это вещь, MS SQL - это как минимум большущий гимор !


 
Aleks1   (2002-02-24 02:00) [2]

> Johnmen © (22.02.02 22:09)
А я знаю тех, кто ответит по другому.
Имхо и там и там свои плюсы и минусы. Для конкретной задачи свое предпочтение.


 
Suntechnic   (2002-02-24 06:37) [3]

>Johnmen © (22.02.02 22:09)
Я бы всё-таки был осторожней в выражениях. Эти строчки могут читать люди, которые стоят перед выбором и твоё высказывание воспримут всерьёз. А правда заключаеися в том, что для тебя это геморой, а для остальных это СУБД.


 
sniknik   (2002-02-24 08:46) [4]

Сталкивался с разными базами и могу сказать, везде есть минусы и ограничения. Про IB не знаю а MS SQL имеет больше всех (мне известных)возможностей по написанию SQL скриптов. Если работать через ADO то там где в других приходилось писать процедуры на Delphi для обработки данных или переноса то в MS SQL обходилось одним запросом или SQL процедурой (иногда даже очень больщие). Для разработчика думаю это большой плюс.
P.S. Про минусы. Знаю ощибку MS SQL изза которой даже писал в Microsoft (безуспешно). Кому интересно напишите пришлю описание и код дающий глюк (происходит при линковке dbf к MS SQL). (с обещанием ответа и описания теста)


 
sniknik   (2002-02-24 09:02) [5]

по поводу глюка. в выходные пишите на адрес niks@pupsik.ru а то с адреса в анкете все уйдет на работу и я только во вторник их увижу. (там выделенка и скачка писем на локал раз 10мин короче из дома не поймаеш)


 
Леша   (2002-02-24 09:28) [6]

А мне вот пришлось с IB перейти на SQL 2000. Выборки идут заметно быстрее. Больше понравилать политика безопасности. Ну естественно болше всяких утилит, мне, напрмер, понравилось что бэкапить базу можно по расписанию. Для IB же самому програмку писать пришлось. Более чем у IB расширенный синтаксис SQL языка. А поскольку основная логика переложена на сервер, это мне дало большие возможности. Больше возможности для оптимизации. Также проще работать c Blob полями. Вот работа с триггерами реализована намного хуже чем у IB.


 
McSimm   (2002-02-24 12:01) [7]

Минусы: После IB в MS-SQL работа с тригерами и транзакциями первое время просто невыносима.

Плюсы: Удобство и возможности администрирования, возможности TSQL богаче.


 
AndreyGA   (2002-02-25 07:36) [8]

IB - плюсы:
1) абсолютная поддержка стандартов SQL, отсюда практически не книг по IB, в MS-SQL то вместо точки нужно ставить запятую, то крестик вместо минуса или еще чего-нибудь. Все что описанов стандарте работает с пол-оборота.
2) практически не требует администрирования, есть 4 параметра, которые желательно настроить, но и без них хорошо работает.
3) легкость архивирования - 1 файл сбросил в zip (сжатие более 10 раз) на дискету (МО) и неси куда угодно
Использую для экспериментов с различными базами.
4) Малый размер - дистрибутив 25Mb из них 18 документация, в памяти в спокойном состоянии от 300К
1 файл мин. 200к.
5) Работа на многих платформах - Windows, Unix, SUN, Netware
Итог: идеальна для малых предприятий

MS-SQL - плюсы:
1) полная интеграция с Windows NT/2000, отсюда лучше политика безопасности
Минусы:
1) и главное - "изобретения" от мелкософта, не стандартные и не совместимые
2) Как всегда у Мелкософта гигантский размер СУБД 300Мб, в БД 200-300 файлов (а если один потеряется)
3) Администрирование - нужен отдельный человек.

Итог: мелкософт в своем репертуаре монополист на службе у компьютерных компаний.
http://www.az-design.ru/


 
Fay   (2002-02-25 08:10) [9]

2 AndreyGA
>IB - плюсы:
>1) абсолютная поддержка стандартов SQL
Это не совсем правда
>2) практически не требует администрирования, есть 4 параметра,
>которые желательно настроить, но и без них хорошо работает.
Это не достоинство, а следствие ограниченых возможностей
>3) легкость архивирования - 1 файл сбросил в zip (сжатие более
>10 раз) на дискету (МО) и неси куда угодно
может ли вызвать сложности архивирование 2-х файлов?
>4) Малый размер - дистрибутив 25Mb из них 18 документация
Малый размер дистрибутива не может являться достоиством СУБД
>Итог: идеальна для малых предприятий
Ничто не идеально

>1) и главное - "изобретения" от мелкософта, не стандартные и не
>совместимые
С чем не совместимые? С PL/SQL или Photoshop-ом?
>2) Как всегда у Мелкософта гигантский размер СУБД 300Мб,
300 Mb - маленькая база, но не каждая база достигает этого
объёма.
>в БД 200-300 файлов
Ты хорошо посмотрел? Меньше 2-х не выйдет, но чтобы 200!
Проверь - похоже ты преувеличил, а если нет - значит так было
нодо.
>(а если один потеряется)
А если сервак потеряется?
>3) Администрирование - нужен отдельный человек.
Не обязательно потребуется брать на работу специалиста,
но если этого потребует ситуация - и под IB наймёшь.
>Итог: мелкософт в своем репертуаре монополист на службе у
>компьютерных компаний.
...А в компаниях сидят слабоумные дети, не способные
самостоятельно выбрать. Ужас.


 
Yavfast   (2002-02-25 09:35) [10]

Существенное отличие - цена.
IB можно использовать на халяву, а за MSSQL надо платитькругленькую сумму.


 
solsoft   (2002-02-25 10:38) [11]

Здравствуйте!
Мы много лет успешно работаем на IB - не жалуемся, всё быстро и надёжно!...
Однако, проводили эксперименты по скорости обработки
различных SQL-запросов на IB и на MS SQL.
Выводы:
1 Порядка неск. сот тысяч записей IB быстрее. Да и вообще,
на малых базах нет смысла городить MS SQL.
2 Где-то к миллиону-двум позиция выравнивается.
3 А далее - MS SQL выигрывает НА ПОРЯДОК (т.е. в 10 и более раз!)

Ну, а что касается администрирования, сложности встроенного языка для хранимых процедур и проч. - всё правильно, MS SQL посложнее будет. Но ведь и DOS проще, чем Windows - и что?



 
}{unter   (2002-02-25 11:00) [12]

Да но есть ещё альтернатива бесплатный MSDE для всех платформ !
Абсолютно тотже MSSQL только в кастрированном варианте по количеству подключений и скорости обслуживания этого большого (больше 5) количества подключений !


 
Dimedrol   (2002-02-25 11:38) [13]

К стати, разве не является БОЛЬШУЩИМ плюсом то, что ИБ работает под Линухом, и имеется в OpenSource варианте ?!
По-моему - бесспорно !


 
AlexanderB   (2002-02-25 12:38) [14]

MS SQL - для "больших" коммерческих структур.
Если компания небольшая и данных относительно немного - Interbase.
И та и другая впоследствии обрастают ... и требуют администрирования.
Я, например, изначально использовал обе.
Очень быстро внедрил Interbase, но остановиться пришлось на MS SQL.


 
MetallAdm   (2002-02-25 13:26) [15]

Не знаю года 4-5 (непомню) сидим на MS SQL
пока некаких проблем небыло !
А базо то полнеет с каждым днем !!



 
Delirium   (2002-02-25 14:35) [16]

Почитал я рассуждения некоторых - возмущению нет предела, как вообще можно сравнивать MSSQL и IB?
MSSQL vs ORACLE - это мне понятно,
IB vs ACCESS - то-же понятно, но MSSQL vs IB - это нонсенс !

IB - СУБД для небольших организаций, 20-50 клиентов.
А MSSQL это настоящая пробышленная СУБД, количество клиетнов тут исчисляется сотнями, а кое-где и тысячами. MSSQL подерживает множество сложнейших механизмов репликаций, и ориентирован на многосерверную работу и распределённые БД.

Надо понимать, что в небольших организациях MSSQL используют из-за его уникальной масштабируемости и удобства, а не потому, что он - равный конкурент СУБД типа IB или ACCESS.

Таково моё мнение.


 
[NIKEL]   (2002-02-25 15:38) [17]

2Delirium
не скажи, давно известно что IB недавно появилась на Российской сцене(сравнительно с 1993 года) - и почему же? Широкое
применение InterBase в правительственных структурах и военно-
промышленном комплексе США было преградой на пути продвижения InterBase в Россию. Среди целого ряда крупных реализаций систем на InterBase в России можно выделить Межбанковскую Валютныю Биржу ММВБ, Центр Управления Полетами ЦУП, внешнеторговую корпорацию Авиаэкспорт и др.
кто там говорил на счет как можно сравнивать??? и что эта субд для небольших предприятий???
ведь надо понимать, что реализация огромной информ. системы включает в себя как миниум не один сервер СУБД, а десятки и сотни которые работают сообща
...подумайте над этим


 
Bachin   (2002-02-25 16:13) [18]

2Delirium : спасибо, что написал мои мысли - руки не доходили :)
а насчет примеров - это не показатель. некоторые перешли на MySql - ну и что? если кто-то скажет что для бизнес-логики в двухзвенке может быть SQL сервер без тригеров, то ... лично мне будет смешно.
Также веселят доводы по поводу простоты администрирования! "У IB четыре параметра, да и те можно не настраивать"... и в MSSQL можно не настраивать и в Oracle, только работать чуть хуже будет :))
а меня например пугает отсутствие логов транзакций!
и самое интересное: знатоки IB так нелюбящие MSSQL покажите мне кусочек кода, который я не смогу перенести на MSSQL БЕЗ выкрутасов.
Мне, например, сейчас, работая с IB, не хватает многих вещей...
(про администрирование я вообще мочу! его НЕТ)


 
Delirium   (2002-02-25 16:38) [19]

> [NIKEL]
Уж не утверждаешь-ли ты что IB более распространён чем MSSQL?
А на счёт "огромной информ. системы", так ведь я об этом и говорю, MSSQL как раз и подходит для крупномасштабных решений. А если какие-либо структуры в Росии предпочитают IB, то могу тебя уверить в нашей "дикой" стране далеко не всегда разворачиваются полномасштабные исследования в вопросах выбора средств, даже в оч.крупных организациях (я работал и работаю сейчас как раз в такой). А уж тем более в государственных, по моему опыту тут всё решают деньги, а не функциональность той или иной СУБД. Так что если ЦУП или ММВБ выбрали IB, это отнюдь не значит что он чем-то лучше, скоре он просто дешевле обошёлся в данных случаях, или кто-то из руководства нагрелся на этом.


 
[NIKEL]   (2002-02-25 16:56) [20]

2Delirium
неутверждаю
>>на счет что кто то нагрелся
не думаю что это так, а думаю что там работают люди которые умеют по настоящему настраивать ситему
и ты думаешь что в таких организациях стоят Win сервера??? ты ошибаешься


 
Delirium   (2002-02-25 17:01) [21]

> [NIKEL]
А почему-же тогда такие "умные" не выбрали Oracle ?


 
McSimm   (2002-02-25 17:04) [22]

>знатоки IB так нелюбящие MSSQL покажите мне кусочек кода,
>который я не смогу перенести на MSSQL БЕЗ выкрутасов.

Я не поклонник IB и не противник MS-SQL. Работаю на MS-SQL уже несколько лет. Но вынужден повториться:
- механизм транзакций в MS-SQL отвратительный. Слабый (по возможностям) и неудобный (в программировании).
- Очень не хватает IB-механизма триггеров. То, что в Interbase делается легко и просто в триггере, в MS действительно приходится реализовывать с помощью выкрутасов.

Мнение субъективное, но не только мое.


 
Delirium   (2002-02-25 17:08) [23]

> McSimm
"То, что в Interbase делается легко и просто в триггере, в MS действительно приходится реализовывать с помощью выкрутасов."
- а можно примерчик ?


 
McSimm   (2002-02-25 17:39) [24]

Реальный пример приводить - долго объяснять. Поверьте, на практике сталкивался не раз.

- в MS-SQL невозможно в тригере следить за уникальностью записи для UNIQUE индекса.
- inserted - доступна только для чтения, в отличие от NEW в Interbase.
- Вызов BEFORE и AFTER - раза два могло бы очень облегчить мне участь.
- Активация/деактивация тригера, если не ошибаюсь, в IB делается крайне просто.
- Приоритетность срабатывания тригеров - несколько раз очень нужно было.

Разумеется, все это можно обойти, сделать иначе. Но "выкрутасами" заниматься все-же приходится.
:)


 
Delirium   (2002-02-25 17:57) [25]

> McSimm
По пунктам:
"в MS-SQL невозможно в тригере следить за уникальностью записи для UNIQUE индекса." - не ясно что ты под этим понимаешь, получение значения Identity или что?

"inserted - доступна только для чтения, в отличие от NEW в Interbase." - а зачем тебе писать в inserted, когда надо писать в саму таблицу, опираясь на данные из inserted?

"- Вызов BEFORE и AFTER - раза два могло бы очень облегчить мне участь." - совершенно не понятно чем, если есть те-же таблицы inserted и deleted?

"- Приоритетность срабатывания тригеров - несколько раз очень нужно было." - sp_settriggerorder


 
McSimm   (2002-02-25 18:05) [26]

Спор этот ни к чему не приведет :) Я же говорил, что все можно сделать, уже несколько лет пишу на MS-SQL, IB забыл совсем.

По пунктам:
1. Если происходит нарушение уникальности ключа при добавлении/изменении, в MS - до тригера дела не дойдет, в IB можно эту ситуацию обработать. Я не говорю, что это необходимо, но были очень красивые решения некоторых проблем.

2. BEFORE и AFTER это не OLD и NEW - это тип триггера, время его срабатывания - до или после события.

3. Спасибо за информацию, посмотрю.



 
Delirium   (2002-02-25 18:16) [27]

Хм, по поводу №1 - ситуация исключительная и тут триггера и недолжны работать, надо обрабатывать откат транзакции;
№2 - триггера, которые работают до завершения транзакции, это нарушение логики постоения БД: триггер - должен ВСЕГДА подтверждать транзакцию, а никак не иначе.


 
ev   (2002-02-25 18:20) [28]

2 McSimm © (25.02.02 17:04)
> механизм транзакций в MS-SQL отвратительный. Слабый (по
> возможностям) и неудобный (в программировании).
по-подробней можно...

> Очень не хватает IB-механизма триггеров. То, что в Interbase
> делается легко и просто в триггере, в MS действительно
> приходится реализовывать с помощью выкрутасов.
Что в MS-SQL нет механизма триггеров.


 
Andreym999   (2002-02-25 19:58) [29]

Немножко не по теме, но когда я работал в госказначействе то от днепропетровских коллег я услышал следующее утверждение:
Oracle выигрывает у MS SQL по скорости только, на очень больших базах данных. а на базах в несколько Гб MS SQL значительно быстрее. Следует отметить что объемы информации в днепропетровской области хм весьма не маленькие ... мягко сказано. Поэтому IB здесь вообще не конкурент на мой личный взгляд. А поэтому этот спор считаю немного неккоректным. Для каждого сервера существует своя ниша и свой круг решаемых задач, и все зависит только от типа решаемых задач, а не утверждений типа Oracle рулез MS SQL отстой Linux forever Windows must die. Но поклонникам и настоящим специалистам MS очень повезло потому что решения этой компании, не смотря на всевозможные баги MS, позволяют строить очень технологические и красивые системы с красивыми решениями. Хотя бы связка IIS+ASP+MSSQL. Или VB+VC.
То чего я не увидел пока продукции ни одной компании. Хотя я большой поклонник Borland. Вот так. ;)


 
Tonie   (2002-02-25 20:20) [30]

На самом деле я конечно согласен, что для каждой задачи - свое решение, но вот такие вещи все же раздражают:
http://www.microsoft.com/technet/treeview/default.asp?url=/technet/security/bulletin/ms02-007.asp
А о "красоте" IIS или ASP я бы осторожнее высказывался

P.S. Это не значит, что я с перекошенным лицом ору: "Must die!!!" :-), я собственно сам с продуктами от ms дело имею, но отношение к ним "Прохладно-настороженное"


 
Deniz   (2002-02-26 07:40) [31]

>Bachin (25.02.02 16:13)
>и самое интересное: знатоки IB так нелюбящие MSSQL покажите
>мне кусочек кода, который я не смогу перенести на MSSQL БЕЗ
>выкрутасов.
Ну почему так нелюбящие MSSQL, просто есть некоторые ... неровности.
По поводу примера, реализуй БЕЗ выкрутасов:
1. POST EVENT "Test Message".
2. Выбор идент-а на клиента(в MS-SQL есть последовательности, но много слышал, что они ... ).
А про минусы могу сказать следующее(сам пробовал), Delphi -> xxxQuery(кеширование) + UpdateSQL. Кусок кода:

DataBase.StartTransaction;
Query1.Edit;
...
Query1.Post;
Query1.ApplyUpdates;
... -> Lock table
DataBase.Commit;

После Apply и до Commit -> Lock table для всех других пользователей, даже для просмотра. Хм???
Скажите где ошибка? (без проверки на ошибки, все вводится правильно и исключений нет).


 
maratFromTomsk   (2002-02-26 07:50) [32]

Что я могу сказать про IB - он мне нравится.
во первых он простой, и в то же время мощный.
сть у него некоторые проблемы, например такие что его производительность
начинает со временем падать и его надо периодически
backup & restore.

Мы одновремено работаем над двумя версиями программ под Оракл и IB.

при переходе на Оракл нам не хватало некоторых возможностей IB.

таких как например выборка из хранимой процедуры
я например таким образом делал
сворачивание сальдо в дебетовую или кредитовую сторону
в хранимой процедуре,
а параметры использовал для фильтрации требуемых данных.

Это здорово облегчает решение задач так как позволяет последовательно
решать требуемые задачи.
Например, я могу реализовать набор процедур
для выбора проводок и подготовки сальдо.
Затем опираясь на этот уровень я делаю сальдо-оборотки и т.д. в требуемых разрезах.
и так далее и все это возможно на основе SQL запросов.
То есть сила в возможности сочетать навигационный стиль обработки
и использовать язык запросов в произвольном порядке.

Такой подход позволяет получить хорошую производительность в IB
Запрос можно оптимизировать на скорость путем создания требуемых индексов,
в результате чего читаются только необходимые данные.

В Оракл есть ограничения
нельзя делать выборки из функций,
в функциях используемых в запросах нельзя изменять данные
или использовать внешние переменные.

Хотелось бы знать есть ли такая же возможность в ms sq.

или возможность делать подзапросы в секции полей
select a.id,
(select b.name from t1 b where b.id = a.id) as bname,
(select c.name from t2 c where b.id = a.id) as cname
from tmain a

это есть очень хорошо и удобно.

Марат


 
Deniz   (2002-02-26 08:11) [33]

>Delirium © (25.02.02 18:16)
>№2 - триггера, которые работают до завершения транзакции, это
>нарушение логики постоения БД: триггер - должен ВСЕГДА
>подтверждать транзакцию, а никак не иначе.
А причем здесь транзакция? Триггер это набор некоторых действий, которые выполняются до/после изменения(insert, update, delete) таблицы. А транзакцию уже пользователь завершает по кнопкам сохранить/отменить(может не так хорошо выразился, но думаю меня поймут).


 
evgeg   (2002-02-26 08:17) [34]

> IB vs ACCESS - то-же понятно, но MSSQL vs IB - это нонсенс !
Ты не прав. IB может работать и с сотнями клиентов, это настоящий sql-сервер. То, что MSSQL сам по себе занимает большой объем, а IB -- маленький, говорит наоборот в пользу IB.


 
Толик   (2002-02-26 09:32) [35]

Я вот почитал, но так и не понял, что человеку выбрать? Если он все-таки, выберет IB, то я так понял, у него будут проблемы при большом объеме БД. Непонятно вот что - в этом случае ему все-равно придется перейти на SQL или Oracle. Или у IB есть будущее?


 
MetallAdm   (2002-02-26 11:22) [36]

Странно !
много интерстного но все же сдесь присутсвуют нотки вкуса ....
В принципе оно так и есть пока сам не попробуешь
не узнаешь все приходит с опытом
а вот там исходя из своего опыта уже и можно решить
что лутше что хуже
ведь каждому ближе что то свое !


 
FFFF   (2002-02-26 11:40) [37]

Мне кажется, это пустые споры.
Сервер нужно выбирать под задачу. Есть несколько
простых вещей, которые нужно оценить сразу -
количество пользователей, предполагаемый размер базы,
интеграция с другими приложениями, и выбирать, что подходит.
При постановке вопроса нужно было это указать, ответы были
бы более конкретными.


 
Dok_3D   (2002-02-26 12:21) [38]

Есть старая истина (ну... почти истина),
что дороже, то и лучше.
Если MSSQL стоит 20000$ на один процессор, а IB вообще ничего не стоит, то конечно MSSQL лучше :))).

P.S. А вообще, согласен с теми, кто утверждает, что это пустые споры.





 
ev   (2002-02-26 12:22) [39]

1. справиться IB с ОЧЕНЬ большим объемом данных?
2. как по безопасности IB?


 
McSimm   (2002-02-26 12:57) [40]

>ev © (25.02.02 18:20)
Мне сейчас трудно ответить, разложив по полочкам - это накопленное отношение. Например в IB очень легко (насколько помню) организовывается транзакция в стиле
try
любая работа
except
rollback-exit при любой ошибке
end
commit если небыло ошибок

- В MS-SQL во многих процедурах мне пришлось писать некрасивый код после каждой команды. - Процедура на 60% состоит из проверки на ошибку и принятия решения commit-rollback
- Вложенность какая-то ненастоящая.
- Открывая транзакцию приходиться гадать, а где же она закроется? Во вложенном вызове процедуры или в тригере каком?

- Однажды у меня из-за глюка осталась открытая транзакция (открыл по глупости из клиентского приложения). В конце дня каким-то образом база сделала rollback этой транзакции (по-видимому в результате backup операции). Так из базы пропала почти вся информация добавленная в нее после открытия транзакции.
База буквально откатилась к утреннему состоянию. Но не полностью, а какими-то загадочными участками. (Некоторые справочники сохранили информацию)
При этом дневная работа не имела к этой транзакции прямого отношения - разные пользователи, разные компьютеры.
В IB откат транзакции откатит только то, что выполнено в ее контексте

>Что в MS-SQL нет механизма триггеров.
Есть, но не такие удобные.



Страницы: 1 2 вся ветка

Форум: "Базы";
Текущий архив: 2002.03.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.58 MB
Время: 0.007 c
14-91076
Juct_me
2002-02-15 21:52
2002.03.28
Как мне изменить: Размер шрифта в свойствах экрана ?


3-90779
alexbl
2002-03-04 03:07
2002.03.28
ListBox


4-91102
Mirovodin
2002-01-28 12:38
2002.03.28
Таблица импорта


1-90987
JibSkeart
2002-03-15 12:27
2002.03.28
Ээ что то немогу придумать как в PopUpMenu добавить програмно итемы


6-91028
SemFLY
2002-01-10 04:08
2002.03.28
Компоненты Indy -> TIdTCPServer и TIdTCPClient





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский