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

Вниз

Освобождение ресурса в finally   Найти похожие ветки 

 
ANB   (2008-05-14 13:33) [640]


> обождите, ты мне задачу давал с чем? именно в этом был подвох
> то, в PK поле обладающим св-вом identity/autoincrement,
> а иначе задача твоя изюминкой никакой не обладает и никаких
> нюансов нет...
>
> ты дал условия, я к этим условиям приспособил PS... эти
> нюансы в структуре БД, в принципе допустимы, в контексте
> аппсервера, но не рекомендуемы...

Я просил изобразить, как в контексте твоего приложения, ты получаешь ID записи после/перед вставкой, чтобы потом использовать его дальше (например, для вставки дочерней записи).
В случае использования автоинкремента эта задача с использованием только SQL-92 не решается. Во всяком случае, корректно.
Однако, выясняется, что генерацией ключей занимается не СУБД, а аппсервер.
Гы. Ну, когда я писал на клиппере, у меня тоже ИД генерились на клиенте, но там просто не было другого способа.
А вот зачем использовать костыли при наличии нормальных серверов с генераторами ?


 
Palladin ©   (2008-05-14 13:40) [641]


> А вот зачем использовать костыли при наличии нормальных
> серверов с генераторами ?

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

нужно, станут использовать конкретные специфики конкретных серверов, это не запрещается, если заказчик не предполагает никуда уходить с mssql или с oracla...

в случае неопределенности с СУБД никто не будет в зравом уме использовать какие либо конкретные возможности какой либо конкретной СУБД...


 
ANB   (2008-05-14 13:50) [642]


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

В случае неопределенности с СУБД никто в здравом уме не возьмется разрабатывать приложение, т.к. этот вопрос должен быть решен еще на стадии планирования. Т.к. даже архитектура приложения может иметь из-за этого различия. Да и личность архитектора от этого зависит.


 
Palladin ©   (2008-05-14 13:52) [643]


> ANB   (14.05.08 13:50) [642]

с твоими религиозными убеждениями я спорить уже давно перестал...


 
Игорь Шевченко ©   (2008-05-14 14:43) [644]

ANB   (14.05.08 13:13) [638]


> каким сервером ? СУБД или приложений.


СУБД очевидно, так как понятие ID записи имеет смысл только при общении с базой данных, нес па ?


 
Игорь Шевченко ©   (2008-05-14 14:46) [645]

ANB   (14.05.08 13:33) [640]


> Я просил изобразить, как в контексте твоего приложения,
> ты получаешь ID записи после/перед вставкой, чтобы потом
> использовать его дальше (например, для вставки дочерней
> записи).


В конктесте приложения (того, которое общается с AppServer-ом) нет нужды знать про какие-то ID, какие-то дочерние записи и т.п.

В контексте приложения есть нужда знать про сущности предметной области целиком (или про html-странички)

В контексте AppServer-а, в зависимости от СУБД и может возникнуть нужда обрабатывать "записи" поодиночке, а может и не возникнуть, если, опять же, сущности могут безболезненно путешествовать между СУБД и сервером приложений.


 
ANB   (2008-05-14 15:07) [646]


> В конктесте приложения (того, которое общается с AppServer-
> ом)

Я не имел ввиду под словом "приложение" клиента. Я имел ввиду сам аппсервер. Или он уже не приложение ?


 
Игорь Шевченко ©   (2008-05-14 15:19) [647]

ANB   (14.05.08 15:07) [646]

Про Аппсервер я тоже написал.

"В контексте AppServer-а, в зависимости от СУБД и может возникнуть нужда обрабатывать "записи" поодиночке, а может и не возникнуть, если, опять же, сущности могут безболезненно путешествовать между СУБД и сервером приложений."


> Я не имел ввиду под словом "приложение" клиента. Я имел
> ввиду сам аппсервер. Или он уже не приложение ?


Было бы замечательно, если бы ты сразу указывал, что ты имеешь в виду


 
ANB   (2008-05-15 11:31) [648]


> Было бы замечательно, если бы ты сразу указывал, что ты
> имеешь в виду

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


 
Игорь Шевченко ©   (2008-05-15 11:40) [649]

ANB   (15.05.08 11:31) [648


> Ну дык у палладина "тонкий" клиент и про базу и ее структуру
> вообще ничего не знает.


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


 
ANB   (2008-05-15 16:52) [650]


> И правильно делает, что не знает.

Дык я разве против ?
Я считаю, что клиент и без аппсервера ничего про структуру базы знать не должен.


 
Palladin ©   (2008-05-16 12:14) [651]


> ANB   (15.05.08 16:52) [650]

но ведь кто-то же должен... кто же...


 
ANB   (2008-05-16 15:23) [652]


> Palladin ©   (16.05.08 12:14) [651]

У тебя аппсервер знает. Через скрипты.

Мне больше нравится механизм, что знать должен только сам сервер СУБД.
А клиент только должен вызывать хранимки. Причем это тоже должно управляться сервером.

Короче, моя идея отличается от твоей в том, что бизнес слой и метаданные я хочу разместить прямо на сервере СУБД, а ты разместил это все на аппсервере.



Страницы: 1 2 3 4 5 6 7 8 9 
10 11 12 13 14 15 16 17 вся ветка

Форум: "Начинающим";
Текущий архив: 2008.06.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 1.51 MB
Время: 0.277 c
4-1190785775
арпывапр
2007-09-26 09:49
2008.06.08
CallNextHookEx - не нужнаю


10-1146837285
Teddy24
2006-05-05 17:54
2008.06.08
Проблема подключенения DCOMConnection


9-1170325345
antonn
2007-02-01 13:22
2008.06.08
А не устраивать ли нам небольшие конкурсы по кодингу? (ч.22)


6-1188565957
Андрей Пл
2007-08-31 17:12
2008.06.08
Как узнать программно имя машины и IP адрес


10-1146725232
abasheev
2006-05-04 10:47
2008.06.08
ошибка при создании XML документа





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский