Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 5 [6] 7 8 9 10 .. 20   вперед  Ctrl
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
c127
Guest
2 Lepsik

>у нормального банка список клиентов на web-сайте висит.

На сайте висит список НЕКОТОРЫХ клиентов, которые были не против, чтоб туда повеситься.

>любой нормальный админ забанит ip при такой активности уже через полчаса.

Так активность проявлять и не надо, мелкософт и об этом позаботился. В представленни syslogons есть поле passwords, там лежит зашифрованный пароль. Это представление зачем-то открыто (по-умолчанию) для группы public. Качай к себе на машину и расшифровывай на здоровье.

Представление в MSSQL 7.0 выглядит примерно так (цитирую по-памяти, могут быть небольшие неточности):

create view syslogins as
...
passwords = convert(sysstring,passwords),
...
from sysxlogins;

Вот и объясните мне, зачем светить зашифрованные пароли всех юзеров группе public? Можно же было хоть это поле не включать в представление.

2 aag

>Странное у вас, однако, мнение. Т.е., если некто, напр., зайдет на сервер Оракла и ткнется там в таблицу, на которую у него нет прав и получит после этого ошибку - это нормально. А если он после этого, зайдет в приложение, которое после коннекта пытается читать таблицу баз - на которую у некто не прав - и получает отлуп, то это значит MSSQL плох.

Обсуждается совсем другая ситуация. Почитайте чуть выше, все станет понятным.

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

Я пока тоже не представляю, что с ним можно сделать. Но из того, что мы с Вами этого не представляем, не следует, что никто не представляет. По-видимому поэтому считается правильным показывать пользователю только то, что необходимо для его работы, на случай, если мы чего-то не учли - и вроде бы невинная информация содержит нежелательные данные. Чем меньше информации тем меньше таких неучтенных возможностей, которые могут использовать люди, более умные, чем мы с Вами.

Пример с банком абсолютно корректен уже потому, что в банке может в качестве SQL сервера использоваться MSSQL и юзерам (по крайней мере привелегированным) могут быть присвоены индивидуальные логины и такие юзеры могут видеть других привелегированных юзеров. Получается нелогично: идешь в банк просишь список - не дают (надеюсь тут никто не сомневается, что не дадут), а идешь на сервер того же банка говоришь "select * from master.dbo.syslogins;" и получаешь список.

2 SergSuper

>В случае с юзерами совсем другая картина - юзеры могут передавать права другим юзерам,

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

>смотреть данные, введёнными другими юзерами,

и опять, для этого не обязательно знать список всех юзеров, нужно знать имя только того (тех), чьи данные ты хочешь посмотреть (если это разрешено). И в банке ты можешь иметь доступ к чьему-то счету, например жены.

>каждый догадывается что сотрудник Х тоже является юзером

если ты сотрудник фирмы, и фирма маленькая, то да, но не все юзеры - сотрудники фирмы. Я, например, не был сотрудником фирмы предоставлявшей нам хостинг, а списки своих коллег по хостингу видел. Кстати список сотрудников часто тоже секретная информация. Попробовал бы ты получить список сотрудников какого-нибудь почтового ящика в середине семидесятых, или хотя бы пересчитать входящих, стоя утром у проходной. Даже если ты был сотрудником этого ПЯ.

Так что мой пример правильный.

>Но суть не в этом. Ты написал: Юзер вообще не должен никогда видеть ничего, что его непосредственно не касается. Это общее базовое правило любой системы безопастности, не только программной. Почему ты так решил? Кто это правило придумал? Я могу написать: показывать список логинов и ресурсов- это общее базовое правило любой системы безопастности. Почему ты считаешь что прав, а я нет?

Потому что меня так учили. Я не знаю кто придумал эти правила, и не могу ничего строго доказать, но по-моему они логичны и очевидны. По-видимому я не могу доходчиво объяснить почему именно так принято поступать. Поговори с экспертами по безопастности, может они скажут что-нибудь убедительное.

>Ну вот ты сделал базу, отдизайнил значит, потом тебе надо раздать права на неё(не одному ж тебе с ней работать). Ну и как ты это сделаешь, не видя списка юзеров?

Как я сказал команды grant/revoke не требуют знания всех имен пользователей.

А в оракле или в ASA я бы просто позаводил юзеров в своей БД и не морочил бы себе голову. В соседней базе на том же сервере мой коллега "администратор" делал бы точно то же и мы бы ничего друг о друге не знали и никогда не видели бы чужих юзеров.

А в моем примере с хостингом на MSSQL 6.5 это вообще была OLTP система, т.е. все обычные пользователи ходили через один акаунт БД "xxx", плюс был локальный "администратор" выдающий права "xxx" на доступ к объектам своей базы данных. По-моему эти два акаунта были заведены заранее хозяевами сервера.
Поэтому списки всех остальнх пользователей сервера мне были совершенно ни к чему, но я их видел без пролем.
19 дек 03, 09:36    [466434]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
c127
Guest
Ошибочка. Вместо "привелегированный" прошу читать "привилегированный".
19 дек 03, 09:42    [466439]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
aag
Member

Откуда: Москва
Сообщений: 1955
2 Lepsik

А в цивилизованных странах есть кредитное бюро и любой знает что за активы-пассивы и в каком банке лежат на любоe физическое/юридическое лицо.
Вы, уважаемый, совершенно путаете сведения о балансе банка с реальными сведениями о его активах/пассивах и историей кредитополучателя в кредитном бюро с клиентом банка. Лучше не углубляйтесь, а то такую ахинею несете... Сейчас, не дай бог, скажете, что любая домохозяйка в цивилизованной стране может заглянуть в карман к соседу-миллионеру.

2 с127
...могут быть присвоены индивидуальные логины и такие юзеры могут видеть других

Да, но это касается сотрудников банка, а не клиентов. А список сотрудников внутри любой организации доступен. Снаружи же - посторонние вообще не должны видеть и даже знать о существовании сервера.

Я пока тоже не представляю, что с ним можно сделать

Ну вот, видимо и в MS не нашли :).

Nobody faults but mine... (LZ)
19 дек 03, 13:13    [466998]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
Lepsik
Member

Откуда: glubinka
Сообщений: 4257
2aag

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

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

--Лучше не углубляйтесь, а то такую ахинею несете... Сейчас, не дай бог, скажете, что любая домохозяйка в цивилизованной стране может заглянуть в карман к соседу-миллионеру.

не надо валить с больной головы на здоровую. любая домохозяйка не может.
нo если сильно надо, то большого труда и денег это не стоит ни в северной Америке, ни в Европе.
19 дек 03, 17:28    [467845]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
Lepsik
Member

Откуда: glubinka
Сообщений: 4257
2 c127

--Пример с банком абсолютно корректен уже потому, что в банке может в -качестве SQL сервера использоваться MSSQL

дайте мне хоть один открытый Ip адрес российского банка с доступом к MS SQL.

ну как малые дети ей Богу.
19 дек 03, 17:31    [467850]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
Cat2
Member

Откуда: Petroskoi, Karjala
Сообщений: 145754
s79. Штатные средства MSSQL для работы с внешними файлами

Для имеющих ODBC-драйвера структур.
Linked Servers - любая база/таблица подключается к MS SQL как "родная" на постоянной основе
OpenRowset - почти то же самое, но сведения о соединении не сохраняются, обычно применяется для разовых операций.

В стандартную поставку входят ODBC драйвера для Access, Excel, dBase, Paradox, Oracle, VFP, текстовых файлов, имеющих таблицо-подобную структуру. Для прочих баз/таблиц драйвера нужно скачивать специально.

DTS (Data Transformation Services) - выполняет пакеты заданий. В пакетах используются VBScript или JScript, которые через ActivX могут выполнять обращение ко всему, что может являтся сервером OLE. В том числе и обращатся к файловой системе. Можно найти любой файл и залить его в базу. Хоть целиком, хоть выдрав из него кусок.

s79

А в оракле или в ASA я бы просто позаводил юзеров в своей БД и не морочил бы себе голову. В соседней базе на том же сервере мой коллега "администратор" делал бы точно то же и мы бы ничего
друг о друге не знали и никогда не видели бы чужих юзеров.

На MSSQL можно сделать несколько инстансов (Instances) на одну машину. Админ одного инстанса ничего не будет видеть на другом.

=============
У меня такое впечатление, что в этой ветке ругают MS SQL люди, которые когда-то что-то пытались сделать на MS SQL 6.5, но у них ничего не получилось. Меня удивляет безапеляционность оценок и утверждений. Если что-то делается на Oracle, то это должно точно так же делаться везде. А если не что-то не делается, то это никому не нужно.

Кстати, какую версию Oracle надо иметь, что бы можно было использовать в текстовом поле двойную кавычку? Мне иной раз приходится делать данные для закачки в Oracle. И всегда вставить " - низя.
Ну и еще вопросы.
Поддерживает ли Oracle Unicode? Свет клином на Юсе и Англии не сошелся.
Может ли юзер не вводить при входе в базу пароль? В MS SQL есть аутентификация на уровне OС. Если юзер зашел в сеть, то он без лишних вопросов логинится к базе. Разумеется, если его логин есть в логинах сервера. Гораздо легче заставить юзеров помнить один сложный пароль, чем два.
20 дек 03, 00:47    [468092]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
ppp
Member

Откуда:
Сообщений: 278
Unicod estesstvenno podderzivaet,
OS authentication rabotet po takomu ze principu kak i v MS SQL ( toe estj mazesh cherez OS )
20 дек 03, 01:00    [468095]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
c127
Guest
2 Lepsik

>дайте мне хоть один открытый Ip адрес российского банка с доступом к MS SQL.

А такие банки вообще бывают в природе? По-моему MSSQL не очень жалуют в финансовых организациях, и правильно делают.

2 Cat2

>На MSSQL можно сделать несколько инстансов (Instances) на одну машину. Админ одного инстанса ничего не будет видеть на другом.

А что, master для разных инстансов будет разный?
В любом случае, речь идет о совершенно конкретном примере из жизни, о ситуации, с которой столкнулась наша компания. Можно-нельзя это все из области теорий, тут уже сто раз говорилось, что можно вообще все. Можно еще один сервер купить, тогда проблем вообще не будет. Но почему-то в жизни так не делают.

>Может ли юзер не вводить при входе в базу пароль? В MS SQL есть аутентификация на уровне OС. Если юзер зашел в сеть, то он без лишних вопросов логинится к базе. Разумеется, если его логин есть в логинах сервера. Гораздо легче заставить юзеров помнить один сложный пароль, чем два.

Конечно же аутентификация на уровне OС в оракле есть. Дурной пример заразителен, сделано в угоду домохозяйкам. Еще одна дырка в безопастности, причем это признал даже мелкософт и интенсивно с ней борется. В смысле борется с дыркой, а не с безопасностью. Если лень запоминать два пароля никто не мешает использовать один и тот же два раза, но вводить его ИМХО нужно всегда.

2 aag

>Да, но это касается сотрудников банка, а не клиентов.

Речь шла как раз о клиентах, может я не очень удачно это сформулировал.

>А список сотрудников внутри любой организации доступен.

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

>Снаружи же - посторонние вообще не должны видеть и даже знать о существовании сервера.

Я согласен. Мой пример скорее теоретический, может не очень удачный. Он приведен для того, чтоб показать как работа банка напрямую может быть связана с работой SQL сервера.

>Ну вот, видимо и в MS не нашли :).

А кто сказал, что там сидят умные люди? Я всегда говорил, что там только один умный человек - Билл Гейтс, остальные так себе.

А вот еще один перл на ту же тему (документация MSSQL7.x):

Effect on Passwords of Changing Sort Orders.

In SQL Server Authentication, when a login ID is added or a password is changed, the password encryption algorithm takes the supplied password and generates a numeric representation, which is stored in the syslogins table. (тут ошибка, syslogins это представление, туда ничего не добавляется, таблица называется sysxlogins, но это сейчас не важно)
If the password is generated on a case-sensitive server, the original password text, as typed, is supplied to the password algorithm. When the password is subsequently checked, the user must supply the same characters in the appropriate case for authentication.
If the password is generated on a case-insensitive server, the password is converted to uppercase before generating and checking the encrypted form. When the password is subsequently checked, the user can supply the characters in upper-case or lowercase.

Перл находится в последнем абзаце. Вместо того, чтоб просто взять пароль, зашифровать его и положить в таблицу, в case-insensitive сервере выполняется дополнительное (!) действие по переводу его в верхний регистр, а только потом шифрование. А потом это дополнительное действие повторяется каждый раз при проверке пароля. Причем это действие делается далеко не для каждой строки, попадающей в базу, поскольку даже в регистронезависимой базе строки хранятся в их первоначальном регистрозависимом виде. При этом защита ухужшается примерно в 2**(длина_пароля) раз, поскольку при взломе достаточно перебирать буквы только верхнего регистра. Объясните мне, кто поумнее, зачем делать специальное дополнительное действие которое к тому же серьезно ухудшает защищенность системы.
20 дек 03, 03:25    [468110]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
Cat2
Member

Откуда: Petroskoi, Karjala
Сообщений: 145754
Половина Российских банков вообще до сих пор на Clipper Summer 87 работают .
=======================
c127

Каждый инстанс MS SQL является абсолютно независимым сервером, со своим движком и своими базами. Разумеется, и master у них разные.

"В угоду доможозяйкам" - так мы все к ним в угоду работаем. Они на клиентах сидят. Система безопасности - это всегда компромис между удобством и запретами. Абсолютна надежна только система состоящая из отсутсвующего компьютера

Если использовать Windows Authentication, то никаких проблем с регистронезависимыми паролями нет. Да и при 16-значном пароле, даже состоящем из одних только латинских букв, сокращение времени подюора в два раза не существенно.
=======================
Поскольку оппоненты со строны Oracle постоянно используют ссылки на MS SQL 6.5 и 7.0, то я тоже взял книжку по Oracle 8 и освежил знания.
И не нашел там ничего, что бы я не смог сделать на MS SQL 2000. Особенно внимательно изучил PL/SQL. Часто встречал утверждение, что PL/SQL круче, чем T-SQL. Никакой особой крутизны я там не нашел.
И user-defined-function - не нашел.

Так же я не стал и "гуру" по Oracle



Вопросы.
Можно ли на Oracle сделать гетерогенный запрос. Типа, связать одним запросом таблицы из Oracle, MS SQL, Paradox? На MS SQL - да.

Можно ли на Oracle сделать запрос с распределенной транзакцией? То есть
одновремено изменить данные в таблицах на четырех базах, работающих, скажем, на Oracle 9i, Oracle 7, Access 2.0 и MS SQL 2000 и в случае неудачи, откатить транзакцию? На MS SQL - да.

=============
Так как там про двойную кавычку? В какой версии Oracle ждать? Что саппорты обещают?
20 дек 03, 14:34    [468252]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
funikovyuri
Member

Откуда: Симферополь
Сообщений: 4045
2c127

А такие банки вообще бывают в природе? По-моему MSSQL не очень жалуют в финансовых организациях, и правильно делают

могу заверить что мы его очень любим :)
20 дек 03, 15:15    [468271]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
Yo!
Guest
главное различтие в серверах - идеология. Оракл не считает что сервером должна рулить любая домохозяйка и считает что дба/девелопер умный ... у МС другая .. потому и возможности настроек и т.п.

2cat2: если у вас проблема с кавычками боюсь отделатся освежением знаний не получится ... есть подозрение на ДНК.

перечислить все фичи оракла не рельно, ограничусь то чо упоминалось:

pl/sql: у МС нет понятия valid/invalid процедур, нет понятий package, нет объектов, и еще кучи элементарных вещей (разницу в фунциональности думаю не стоит упоминать)
гетерагенные запросы: естественно были лет за 20 до появления МС
транзакции: у оракла есть автономные транзакции, она не зависит от того чем закончилась основная, у МС такого нет.
unicode: к оракла в сессии можно сказать в какой кодировке клиент хочет получать данные (сервер будет для него конвертить). т.е. на один клиент можно получать одновременно (с разных сессий) разные кодировки и естественно уникод, причем любые разовидности, у МС такого нет.
20 дек 03, 17:10    [468343]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
Cat2
Member

Откуда: Petroskoi, Karjala
Сообщений: 145754
Yo!
Не надо становится в позу. Впрочем, это обычое состояние "крутых ораклоидов". Я не говорил об адимнистрировании сервера домохозяйками. Я говорил о тех, кто сидит на клиентской части.

У меня нет проблем с кавычками. Я не претендую на скрупулезное знание Oracle, но ВСЕГДА, когда с меня требуют файлы для закачки в Oracle, там присутсвтует запрет использования двойных кавычек. Когда кто-то из мемберов SQL.ru попросил протестировать его справочный сайт в интернете, то запросы с " так же не обрабатывались должным образом. Я подозреваю, что тут проблемы на уровне ДНК у Oracle или разработчиков под него.

Ну так в какой версии это исправлено? Или эта возможность была всегда? Четко можете сказать? Не опускаясь до оскорблений?

Я не спрашивал про "автономные транзакции". Я спрашивал конкретные вопросы. Можно или нет. По конкретным базам.
Наверное, это обычная практика ораклоидов, если сказать нечего, то нужно рассказать о том как оракл велик и могуч.

Разьяснение про юникод - спасибо. Я ведь действительно очень плохо знаю оракла. Но это не мешает мне задавать вопросы о его возможностях.
Про возвращению клиенту данных в запрошенной кодировке - у МС такого нет. Точно. Нету. И нафиг не нужно. Если данные представлены как NVARCHAR (NCHAR), то этот вопрос даже не стоит. Лишь бы у клиента шрифты нужные стояли. Бегите за паравозом, пока не поздно.

Вопросы.
Чтот такое, в понимании Oracle "valid/invalid procedure"?
Чтот такое, в понимании Oracle "package"? У MS SQL есть "package". Используются в DTS, являются последовательностью шагов, выполняют ЛЮБЫЕ действия, доступные в Windows.
20 дек 03, 19:11    [468384]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
Markelenkov
Member

Откуда:
Сообщений: 2312
To Cat2:

Oracle 9.2:

SQL> create table t1 (p1 varchar2(300));


Table created.

SQL> insert into t1 values('Пожалуйста, " - вот Вам двойная кавычка');

1 row created.

SQL> insert into t1 values('Пожалуйста, '' - вот Вам одинарная кавычка');

1 row created.

SQL> select * from t1;

P1
--------------------------------------------------------------------------------

Пожалуйста, " - вот Вам двойная кавычка
Пожалуйста, ' - вот Вам одинарная кавычка

SQL>


Эта "крутая" возможность в Oracle была всегда. Извините, если Вам не хватает знаний и лень почитать или спросить (хотя бы на этом форуме) кого-нибудь о решении Вашей "проблемы" с кавычками, то не надо позориться, приводя такие аргументы.

У MSSQL есть несколько неоспоримых преимуществ по сравнению с Oracle, но есть и масса недостатков (которых гораздо больше, чем преимуществ). Каждой СУБД свое место.
20 дек 03, 19:36    [468392]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
Yo!
Guest
- ну и что он сказал ?
- мат опустить ?
- опустить
- ничего не сказал ...

2Cat: я намекал, что оракл не претендует на коректную работу у девелопера с подготовкой ... ээ с фиговой подготовкой :)

если возникает проблема с кавычками значит делаем вывод, что человек
а) не слышал о bindings переменных
б) вообще не врубается кто ему шлет ошибку

var:="insert into ... set name=' "lamer" ' ";
странно у меня тоже не работает :)

P.S. дальше лень стучать по клавишам, Cat поверьте все это можно и даже кавычки работают ...
20 дек 03, 19:47    [468396]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
Cat2
Member

Откуда: Petroskoi, Karjala
Сообщений: 145754
И про UDF не забудьте ответить. Кстати, это входит в стандарт SQL-99. И объясните мне, что это "нафиг не нужно". Вам не привыкать. Если Оракл чего то не умеет, то это или бесполезно или нестандартно. Привыкли, что стандарты с Oracle пишутся. Пора отвыкать.
20 дек 03, 19:54    [468399]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
Cat2
Member

Откуда: Petroskoi, Karjala
Сообщений: 145754
var:="insert into ... set name=' "lamer" ' ";
странно у меня тоже не работает :)

Тут больше подходит смайлик :(
В КАКОЙ ВЕРСИИ ЭТО БУДЕТ РАБОТАТЬ?
такие "мелочи" сильно затрудняют жизнь программеров.
20 дек 03, 20:11    [468402]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
Markelenkov
Member

Откуда:
Сообщений: 2312
Разумеется, у Oracle есть UDF. Перечитайте Вашу книгу еще раз.
Если Вас действительно интересуют возможности Oracle - читайте документацию на otn.oracle.com. Почитайте про гетерогенные сервисы, про обработку транзакций, про распределенные транзакции.
20 дек 03, 20:12    [468404]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
Markelenkov
Member

Откуда:
Сообщений: 2312
var:="insert into ... set name=' "lamer" ' ";

Не будет это работать во всех версиях Oracle. Пора научиться понимать толстые намеки.
20 дек 03, 20:18    [468405]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
Cat2
Member

Откуда: Petroskoi, Karjala
Сообщений: 145754
Markelenkov
Я не собираюсь досконально изучать Oracle, так же, как Вы не собираетесь досконально изучать MS SQL 2000. Ответьте на КОНКРЕТНЫЕ воросы.

Мне ораклоидный флуд уже надоел. Ничего конкретного, кроме самовосхвалений и ссылок на двадцатилетнюю историю. Если кто-то из ораклоидов что-то и сравнивает, то Oracle 9i с MS SQL 6.5.

Если у кого-то есть вопросы типа "А может ли MS SQL 2000 ... ?", то я честно отвечу на такие вопросы.
20 дек 03, 20:20    [468406]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
Cat2
Member

Откуда: Petroskoi, Karjala
Сообщений: 145754
Markelenkov
Забыл написать. Оппоненты со стороны Oracle постоянно аппелируют к MS SQL 6.5 - 7.0

В той книге (Oracle8. Первое знакомство. Полное введение в базы данных Oracle. Майкл Эбби и Майкл Кори. М.1998), которую я читал, про UDF ничего не было. Но я не делал из этого выводы, что этого в Oracle нет вообще.

В отличии от ораклоидов я признаю наличиее прогресса в развитии других SQL-серверов.
20 дек 03, 20:27    [468408]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
Markelenkov
Member

Откуда:
Сообщений: 2312
Cat2
Кстати, какую версию Oracle надо иметь, что бы можно было использовать в текстовом поле двойную кавычку

Любую
Cat2
Поддерживает ли Oracle Unicode? Свет клином на Юсе и Англии не сошелся.
Может ли юзер не вводить при входе в базу пароль? В MS SQL есть аутентификация на уровне OС. Если юзер зашел в сеть, то он без лишних вопросов логинится к базе. Разумеется, если его логин есть в логинах сервера. Гораздо легче заставить юзеров помнить один сложный пароль, чем два.

Да
Cat2
Можно ли на Oracle сделать гетерогенный запрос. Типа, связать одним запросом таблицы из Oracle, MS SQL, Paradox? На MS SQL - да.

Можно ли на Oracle сделать запрос с распределенной транзакцией? То есть
одновремено изменить данные в таблицах на четырех базах, работающих, скажем, на Oracle 9i, Oracle 7, Access 2.0 и MS SQL 2000 и в случае неудачи, откатить транзакцию? На MS SQL - да.

Да
Cat2
Чтот такое, в понимании Oracle "valid/invalid procedure"?

Коротко: после компиляции код процедуры всегда попадает в базу (создается соответствующий объект "процедура", "пакет", "функция"). Если компиляция была успешной, то этот объект получает статус valid, иначе - invalid. Впоследствии можно просто выдать команду на перекомпиляцию этого объекта.

Cat2
Чтот такое, в понимании Oracle "package"? У MS SQL есть "package". Используются в DTS, являются последовательностью шагов, выполняют ЛЮБЫЕ действия, доступные в Windows.

A package is a group of related procedures and functions, together with the cursors

and variables they use, stored together in the database for continued use as a unit.
Similar to standalone procedures and functions, packaged procedures and functions
can be called explicitly by applications or users.
You create a package in two parts: the specification and the body. The package
specification declares all public constructs of the package and the body defines all
constructs (public and private) of the package. This separation of the two parts
provides the following advantages:
You have more flexibility in the development cycle. You can create
specifications and reference public procedures without actually creating the
package body.
You can alter procedure bodies contained within the package body separately
from their publicly declared specifications in the package specification. As long
as the procedure specification does not change, objects that reference the altered
procedures of the package are never marked invalid. That is, they are never
marked as needing recompilation.

...

Benefits of Packages Packages provide advantages in the following areas:
Encapsulation of related procedures and variables
Stored packages allow you to encapsulate or group stored procedures,
variables, datatypes, and so forth in a single named, stored unit in the database.
This provides better organization during the development process.
Encapsulation of procedural constructs also makes privilege management
easier. Granting the privilege to use a package makes all constructs of the
package accessible to the grantee.
Declaration of public and private procedures, variables, constants, and cursors
The methods of package definition allow you to specify which variables,
cursors, and procedures are public and private. Public means that it is directly
accessible to the user of a package. Private means that it is hidden from the user
of a package.
For example, a package can contain 10 procedures. You can define the package
so that only three procedures are public and therefore available for execution by
a user of the package. The remainder of the procedures are private and can only
be accessed by the procedures within the package. Do not confuse public and
private package variables with grants to PUBLIC.
Better performance
An entire package is loaded into memory when a procedure within the package
is called for the first time. This load is completed in one operation, as opposed
to the separate loads required for standalone procedures. Therefore, when calls
to related packaged procedures occur, no disk I/O is necessary to run the
compiled code already in memory.
A package body can be replaced and recompiled without affecting the
specification. As a result, schema objects that reference a package's constructs
(always through the specification) need not be recompiled unless the package
specification is also replaced. By using packages, unnecessary recompilations
can be minimized, resulting in less impact on overall database performance.


Cat2
И про UDF не забудьте ответить. Кстати, это входит в стандарт SQL-99. И объясните мне, что это "нафиг не нужно". Вам не привыкать. Если Оракл чего то не умеет, то это или бесполезно или нестандартно. Привыкли, что стандарты с Oracle пишутся. Пора отвыкать

Уже ответил

P.S. Если MSSQL что-то может, то советую Вам исходить из того предположения, что Oracle тоже это может. Это поможет сократить Вам время и поможеть поберечь нервные клетки.
20 дек 03, 21:02    [468413]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
Yo!
Guest
предлагаю перенести это в раздел юмора !
Cat я сегодня даже на анекдот.ру не ходил :)

p.s. к стате mssql процудура может вернуть больше одного курсора ?
20 дек 03, 21:13    [468416]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
guest
Guest
SQL mozet rabotatj na AIX, Solaris, Linux, HP unix i t.d. ???
Mozet select ne blokirovatj update i naoborot bez narushenija soglasovannosti dannih ???
20 дек 03, 22:01    [468426]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
Cat2
Member

Откуда: Petroskoi, Karjala
Сообщений: 145754
Markelenkov

Спасибо.
valid/invalid procedure, возможно и нужны, когда процедура пишется "впрок", т.е когда в базе пока нет оперируемых ею объектов. В MS SQL тоже можно написать процедуру по отсутствующим объектам. Разумеется, если нет ошибок синтаксиса.
Если я запущу такую процедуру в MS SQL, то получу ошибку.
Наверное, попытка запуска invalid procedure в Oracle тоже выдаст каrое-нибудь сообщение? И тогда, в чем принципиалная разница? Только в мелочи. В MS SQL не надо будет делать перекомпиляции. Само все сделается, когда объекты появятся в базе.

Насколько я понял, packаge в Oracle сильно уступают packаge в MS SQL, так как оперируют только с объектами базы данных. Packаge в MS SQL являются по сути выполняемыми на стороне сервера программами (этакая трехзвенка получается). Причем могут задействовать все возможности ОС. А packаge в Oracle? Последовательное выполнение 10 SP? В чем тут крутизна?
=====================

P.S. Если Oracle что-то может, то советую Вам исходить из того
предположения, что MSSQL тоже это может. Это поможет сократить Вам
время и поможеть поберечь нервные клетки.
gt;<
==========
О мелочах. В свое время передо мной стояла дилемма. Fox 2.0 или Clipper 5.2. Всем Fox был хорош: и кнопочки, и меню, и окна... Одно только плохо было. Русская "Н" не вводилась. Пришлось на клипере написать свои библиотеки с кнопочками, меню, окнами...

==========
20 дек 03, 22:04    [468429]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше? Оракул9i или MS SQL2000? И чем?  [new]
Cat2
Member

Откуда: Petroskoi, Karjala
Сообщений: 145754
guest
Не все SQL-сервера могут работать на всех платформах.
MS SQL работает только под Windows. Не вижу в этом проблемы.
Не каждый день организации с одной серверной ОС на другую прыгают. Только не надо флейма, что многоплатформенность - это ОГРОМНОЕ преимущество. Это так, удобство второго ряда. И развесистая лапша про "падучий" windows и "вечный" unix, свободно соскальзывает с моих ушей. Я примеров "pro" и "contra" знаю множество. Хотя бы то, что и железо имеет значение. Для битого винта пофиг, какая там супер-пупер-ОС стоит. (Я знаю про RAID, но знаю и сколько он стоит и знаю, как трудно выбить на него деньги)
===========
Для MS SQL.
select может не мешать update. И наоборот. Если правильно выбраны уровни изоляции.
Что Вы подразумеваете под "несогласованностью данных"? Такая вещь может только приснится в страшном сне о том, что я вернулся на клиппер или другую базу без поддержки транзакций.

===========
Yo!
MS SQL хп вообще не возвращают курсоры. Если мы только говорим об одном и том же. Может быть возвращен RecordSet и параметры. В принципе, в ADO возможность возвращать несколько наборов застолблена (NextRecordset), но практически это нигде не работает.
--------------
Жалко, что мы так и не услышали мнение Двойных Кавычек об Oracle
20 дек 03, 23:15    [468452]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 5 [6] 7 8 9 10 .. 20   вперед  Ctrl
Все форумы / Сравнение СУБД Ответить