Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.12.02;
Скачать: CL | DM;

Вниз

Музыкой навеяло...   Найти похожие ветки 

 
Игорь Шевченко ©   (2007-11-01 14:19) [40]

clickmaker ©   (01.11.07 13:23) [14]

В смысле зачем ? Для разграничения доступа вестимо.

DiamondShark ©   (01.11.07 13:45) [22]


> Права -- ничто. Удобство сопровождения -- всё.


Не совсем понимаю, чем пара SQL-запросов обернутых в ХП удобнее в сопровождении, чем не в ХП. Куча ХП разве проще в сопровождении ?


 
clickmaker ©   (2007-11-01 14:20) [41]


> Что, там даже параметров нету?!

да ты чё... какие параметры
есть конечно sprintf, но сам факт отсутствия ХП оченно удручает


 
clickmaker ©   (2007-11-01 14:22) [42]


> [40] Игорь Шевченко ©   (01.11.07 14:19)
> clickmaker ©   (01.11.07 13:23) [14]
>
> В смысле зачем ? Для разграничения доступа вестимо

а бизнес-логика на что?
в базу вообще напрямую кроме sa никого пускать нельзя. А то потом начинается: "а вот у нас данные куда-то пропали... а вот нельзя ли посмотреть лог транзакций... а вот кто последний в эту табличку ходил..."


 
Игорь Шевченко ©   (2007-11-01 14:25) [43]

clickmaker ©   (01.11.07 14:22) [42]


> а бизнес-логика на что?


Ниче не понял, причем тут бизнес-логика. В базе данных есть объекты, таблицы там всякие, процедуры, представления и еще дофига. На них на всех желательно дать доступ тем, кому он необходим. Чем больше объектов (тех же ХП) тем больше раздач.


 
homm ©   (2007-11-01 14:25) [44]

> [39] clickmaker ©   (01.11.07 14:18)

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


 
clickmaker ©   (2007-11-01 14:35) [45]


> [44] homm ©   (01.11.07 14:25)

да ну на хрен еще ветки плодить, тем более, что тут по теме вряд ли чего-то новое скажут

код простой
<table class="content" height="100%"><tr><td class="content">
%CONTENT%
</td></tr></table>

что через стиль, что напрямую - опера высоту 100% не ставит
Version 8.51  
Build 7712


 
clickmaker ©   (2007-11-01 14:37) [46]


> [43] Игорь Шевченко ©   (01.11.07 14:25)

Вы все еще кипятите? Тогда мы идем к вам

Я к тому, что ни разу не использовал механизм секьюрити сиквела для разграничения полномочий. И как-то жив до сих пор.
Я живу не так? :)


 
homm ©   (2007-11-01 14:42) [47]

> Version 8.51  
> Build 7712

Раритет не собираю, проверь сам, работает или нет, но вообще-то в таком виде работать и не оченьто и должно…

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<style>
html, body, #maintable {
width: 100%;
height: 100%;
padding: 0;
margin: 0;
}
</style>
</head>
<body>
<table id=maintable>
<tr><td valign=bottom>
%CONTENT%
</table>
</body>
</html>


 
clickmaker ©   (2007-11-01 14:44) [48]


> в таком виде работать и не оченьто и должно

почему? противоречит последнему постановлению госдумы?


 
homm ©   (2007-11-01 14:45) [49]

> [48] clickmaker ©   (01.11.07 14:44)
> почему?

Потому что height="100%" это от родителя, а родитель — body, а у body height не 100% от страници.


 
clickmaker ©   (2007-11-01 14:48) [50]


> [49] homm ©   (01.11.07 14:45)

поставил 100% у body - no effect
И почему это Опера 8 - уже раритет? Чем пользуются чисто реальные пацаны?


 
homm ©   (2007-11-01 14:49) [51]

> [50] clickmaker ©   (01.11.07 14:48)
> поставил 100% у body - no effect

Из [47] попробовал? как дела?


 
clickmaker ©   (2007-11-01 14:53) [52]


> [51] homm ©   (01.11.07 14:49)

47 - да
но я-то тоже пишу в стиль body 100%
только у меня стили в css цепляются
и не работает


 
Ega23 ©   (2007-11-01 14:54) [53]

Вот мне как-то музыкой навеяло... Сижу, Uriah Heep слушаю, return to fantasy.
Попутно Build ConnectionString делаю. И что-то не вяжется (сервер по IP надо было указывать). И тут


Searching every day
Looking every way
Trying to make a connection
To find a piece of the action


Я чуть со стула не упал...


 
homm ©   (2007-11-01 14:55) [54]

> [52] clickmaker ©   (01.11.07 14:53)
> но я-то тоже пишу в стиль body 100%

Потому что height="100%" это от родителя, а родитель — html, а у html height не 100% от страници.


 
homm ©   (2007-11-01 14:56) [55]

> [52] clickmaker ©   (01.11.07 14:53)

Это называется посмотри и найди 10 отличий.


 
Sonia ©   (2007-11-01 14:56) [56]


> Ega23 ©   (01.11.07 14:54) [53]

И давно это у вас? :)


 
Ega23 ©   (2007-11-01 14:59) [57]


> И давно это у вас? :)


Uriah Heep слушаю? - так это, лет с четырёх. У меня батя старый рокер...  :)
Build ConnectionString? - так уже года 4, как на ADO перешли...
На слух аглицкий в песнях воспринимаю? Ну это не всегда, но у Heep - лет 7 как...
Со стула падаю? Так я же не упал...

:))))


 
clickmaker ©   (2007-11-01 14:59) [58]


> [54] homm ©   (01.11.07 14:55)

кстати, если обернуть код [47] в <form></form>, то перестает растягиваться
установка <form height="100%"> не помогает
а вот, если в стиль добавить form - помогает

блин... получается, что Опера не наследует стили от вышестоящих блоков, а нужно для каждого явно стиль прописывать?


 
Eraser ©   (2007-11-01 14:59) [59]


> clickmaker ©   (01.11.07 14:05) [34]

это еще что за извращение ))
intval.


 
homm ©   (2007-11-01 15:02) [60]

> [58] clickmaker ©   (01.11.07 14:59)
> установка <form height="100%"> не помогает

потому что у form нет свойства height, надо полагать?


> блин... получается, что Опера не наследует стили от вышестоящих
> блоков, а нужно для каждого явно стиль прописывать?

Наследует. Те, которые нужно наследовать.
http://htmlbook.ru/css/width.html
Наследуется Нет
И в данном случае ты хочешь что-бы наследовалось от нижестоящих блоков, это уже бред.


 
Павел Калугин ©   (2007-11-01 15:07) [61]


> За SELECT * ... -- оставлять на 6 часов без обеда.
> За INSERT без списка полей -- лишать 50% зарплаты.
> За ...WHERE OrderDate="+DateToStr(d) вместо параметризованного
> запроса -- бить милицейской дубинкой по почкам.
> За hard-coded SQL больше чем из одного оператора, не вынесенный
> в ХП -- пожизненный эцих с гвоздями.


Я бы пересмотрел меры воздействия
> За hard-coded SQL больше чем из одного оператора
1. за употребление терминов вида hard-coded - неделя без обеденного перерыва
2. Исписать всю стену словами (12 кеглем) "Больше двух во фроме вьюха больше трех ХП" всю стену. После проверки обязать закрасить"

> За ...WHERE OrderDate="+DateToStr(d) вместо параметризованного
> запроса
см. предидущий пункт

> За SELECT * ...
предложить написать заявление об уходе по собственному желанию
> За INSERT без списка полей -- лишать 50% зарплаты.
предложить подписать заявление об уходе по собственному желанию, в противном случае первый строгий выговор. (после третьего и заявление по собственному не надо будет)


 
DrAndrey ©   (2007-11-01 15:20) [62]

А что делать с разработчиком чье ПО работает только с логином sa, а для отчета делает бэкап базы.


 
Ega23 ©   (2007-11-01 15:22) [63]


> А что делать с разработчиком чье ПО работает только с логином
> sa, а для отчета делает бэкап базы.



    - Раз недруг - повесить, - хрипло сказал отец Цупик.
    - А ваше мнение, брат  Аба?  -  спросил  дон  Рэба,  предупредительно
наклоняясь к толстяку.
    - Вы знаете... Я как-то  даже...  -  Брат  Аба  растерянно  и  детски
улыбнулся, разведя коротенькие ручки. - Как-то мне, знаете ли, все  равно.
Но, может быть, все-таки не вешать?.. Может быть, сжечь, как вы полагаете,
дон Рэба?
    - Да, пожалуй, - задумчиво сказал дон Рэба.
    - Вы понимаете, - продолжал очаровательный брат Аба, ласково улыбаясь
Румате, - вешают  отребье,  мелочь...  А  мы  должны  сохранять  у  народа
уважительное  отношение  к  сословиям.  Все-таки  отпрыск  древнего  рода,
крупный ируканский шпион... Ируканский,  кажется,  я  не  ошибаюсь?  -  Он
схватил со стола листок и близоруко всмотрелся. - Ах,  еще  и  соанский...
Тем более!
    - Сжечь так сжечь, - согласился отец Цупик.
    - Хорошо, - сказал дон Рэба. - Договорились. Сжечь.


 
clickmaker ©   (2007-11-01 15:24) [64]


> для отчета делает бэкап базы

оригинально
а зачем? бэкап в качестве отчета?


 
DrAndrey ©   (2007-11-01 15:32) [65]

Раз в месяц в Управление необходимо отправлять регистр. Там они его сводят в кучу и шлют далее. А то, что сервер не делает бэкап на сетевые диски им по барабану - ставьте MS SQL 2005 Express на машину в отдел кадров, туда же приложение и работайте.


 
Игорь Шевченко ©   (2007-11-01 15:58) [66]

clickmaker ©   (01.11.07 14:37) [46]


> Вы все еще кипятите? Тогда мы идем к вам


Нет, это мы идем к вам. За вашими данными.


> Я к тому, что ни разу не использовал механизм секьюрити
> сиквела для разграничения полномочий. И как-то жив до сих
> пор.
> Я живу не так? :)


То есть, команды grant и revoke для тебя остались вне скриптов ?
Тогда это нельзя назвать жизнью :)


 
clickmaker ©   (2007-11-01 16:26) [67]


> [66] Игорь Шевченко ©   (01.11.07 15:58)

я подозревал, что не так все делаю :)

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


 
Игорь Шевченко ©   (2007-11-01 16:59) [68]

clickmaker ©   (01.11.07 16:26) [67]

А..то есть, механизм управления доступом к базе дублируется в приложении ? А если данные надо тянуть сторонними средствами (неважно какими), то только от sa и эта...правь не хочу ?
Тоже, конечно, способ...


 
pasha_golub ©   (2007-11-01 17:01) [69]


> clickmaker ©   (01.11.07 16:26) [67]
>
>


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

Особая форма извращенства, как мне кажется. Кроме пользователей как таковых существуют группы (или теперь моднее роли). Можно хоть черта лысого настроить.


 
Ega23 ©   (2007-11-01 17:08) [70]


> Особая форма извращенства, как мне кажется. Кроме пользователей
> как таковых существуют группы (или теперь моднее роли).
> Можно хоть черта лысого настроить.


не скажи. Так очень удобно раздавать права на бизнес-процессы, не лазая по системным таблицам.
Точнее - не давая пользователям (пусть даже и очень продвинутым) лазить по системным таблицам.


 
clickmaker ©   (2007-11-01 17:08) [71]


> [68] Игорь Шевченко ©   (01.11.07 16:59)

механизм доступа к объектам предметной области реализован поверх системной. То есть, что-то типа своего ACL. Встроенной сиквельной при все желании не хватит, чтобы учесть все возможные пересечения полномочий, которые могут потребоваться. Вы ж понимаете, что там далеко не только на уровне "можно select - нельзя select", "можно update - нельзя update"...

Доступ на таблицы и прочие хранимки не разграничивается, потому как работать с ними может только sa.

Сторонние средства не используются (кроме как админом, опять же).

Я понимаю, что это частный случай, но он большинство потребностей по автоматизации разного рода предприятий покрывает


 
Ega23 ©   (2007-11-01 17:12) [72]


> clickmaker ©   (01.11.07 17:08) [71]


+1


 
Берия Лаврентий Павлович   (2007-11-01 17:18) [73]

50% зарплаты, лишение обеда, выговор...
Мда.. Мельчают люди...

РАССТРЕЛЯТЬ!!!
С ОБЯЗАТЕЛЬНЫМ ЛИШЕНИЕМ ПРАВ УПРАВЛЕНИЯ АВТОМОБИЛЕМ НА 5 ЛЕТ!!!


 
Piter ©   (2007-11-01 17:58) [74]

DiamondShark ©   (01.11.07 12:55)
За SELECT * ... -- оставлять на 6 часов без обеда


а какая разница... Зачем перечислять все поля таблицы, если они тебе нужны именно все? Можно написать "*"

DiamondShark ©   (01.11.07 12:55)
За INSERT без списка полей -- лишать 50% зарплаты


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


 
Ega23 ©   (2007-11-01 18:12) [75]


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


Create table T1
(
  Col1 int,
  Col2 char(10)
 )

Insert into T1 Values (1, "aaa")


 
data ©   (2007-11-01 18:18) [76]


> Ega23 ©   (01.11.07 18:12) [75]
>
> > а как можно сделать INSERT без списка полей? Что это за
>
> > запрос и в какие поля какие значения будут вставлены?
>
>
> Create table T1
> (
>   Col1 int,
>   Col2 char(10)
>  )
>
> Insert into T1 Values (1, "aaa")


тоже, кстати, не знала про такое. По-моему это не все СУБД поддерживают. Или я ошибаюсь?


 
Ega23 ©   (2007-11-01 18:28) [77]


> тоже, кстати, не знала про такое.


в MSSQL есть ещё круче:

Create table T1
(
 Col1 int identity(1,1),
 Col2 int defaulr 0,
 Col3 datetime default getdate()
)

Insert into T1 default values

:)


 
DiamondShark ©   (2007-11-01 18:28) [78]


> Piter ©   (01.11.07 17:58) [74]
> За SELECT * ... -- оставлять на 6 часов без обеда
>
> а какая разница... Зачем перечислять все поля таблицы, если
> они тебе нужны именно все? Можно написать "*"

"Именно все" нужны только в том случае, если твоё приложение -- что-то вроде SQLExplorer.

В приложении определённой предметной области, во-первых, "именно все" поля мало когда нужны, а, во-вторых, если программист написал SELECT *, значит в момент написания этого кода он слабо представлял себе, что и зачем из этой таблицы ему нужно.
Иными словами, писал код одной рукой, второй почёсывая яйца.


> За INSERT без списка полей -- лишать 50% зарплаты
>
> а как можно сделать INSERT без списка полей? Что это за
> запрос и в какие поля какие значения будут вставлены? Не
> понимаю...

Вот так и можно insert into z values(1,2,3). Вставлено будет в поля, в порядке их следования в таблице. Количество значений должно совпадать с количеством полей. Поэтому, если в таблице появятся доп. поля, даже с вменяемыми дефалтами, запрос перестанет работать.


 
Ega23 ©   (2007-11-01 18:29) [79]


> тоже, кстати, не знала про такое. По-моему это не все СУБД
> поддерживают. Или я ошибаюсь?


Не знаю. Я, честно говоря, никогда так не делаю. Кроме случаев insert из Select во временную таблицу


 
Ega23 ©   (2007-11-01 18:32) [80]


> "Именно все" нужны только в том случае, если твоё приложение
> -- что-то вроде SQLExplorer.
>


2 справочные таблицы, третяя - связка "многие-ко-многим" между справочными с ещё одним дополнительным полем для каждого сочетания.
Обычно пишу

Select T3.*, T1.Name, T2.Name
from Table1 T1, Table2 T2, Table3 T3
where T3.T1ID=T1.ID and T3.T2ID=T2.ID



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

Текущий архив: 2007.12.02;
Скачать: CL | DM;

Наверх




Память: 0.65 MB
Время: 0.027 c
3-1184426535
__alex
2007-07-14 19:22
2007.12.02
Про BDE4 и BDE5


15-1193945817
Evanescence
2007-11-01 22:36
2007.12.02
DHCP и прямое подключение компьютеров


15-1193493795
Denis__
2007-10-27 18:03
2007.12.02
Aнимация


4-1179822306
cosinus
2007-05-22 12:25
2007.12.02
Как найти одно из чужих окон по его потомку?


2-1194685836
Виктор007
2007-11-10 12:10
2007.12.02
Настройки программы