Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Редактирование записи MsSQL


Black777 ©   (2014-01-20 01:07:00) 

Добрый день.
Изучаю delphi в связке с mssql. Статей очень много, но очень часть в интернете полно БЕСТОЛКОВЫХ статей, и не хотелось бы изучать такой материал. Поэтому решил спросить общий алгоритм работы с msSQL.

Собственно создал delphi application, кинул на форму ADOConnection, ADOQuery, DataSource и DBGrid.
Данные из таблицы получил, вижу.

Вопрос №1: При загрузке строк таблицы пользователем №1 (предположим что одна запись редактируется пользователем №2) буду ли я видеть в отборе редактируемые строки другими пользователями (каке параметры влияют на это)?
Вопрос №2: Как правильнее всего обеспечить редактирование какой либо записи в отдельной форме?

Заранее спасибо.


Плохиш   (2014-01-20 14:23:00) [1]


> Black777   (20.01.14 13:31) [8]
>
> А можно ссылочку на информацию материал изучить?

Набор букав из [5] в гуглю уже вставлял?


Ega23   (2014-01-20 14:13:00) [2]


> А можно ссылочку на информацию материал изучить?


https://www.google.ru/search?q=%D0%BF%D0%B0%D1%80%D0%B0%D0%BC%D0%B5%D1%82%D1%80%D0%B8%D0%B7%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D1%8B%D0%B9+%D0%B7%D0%B0%D0%BF%D1%80%D0%BE%D1%81+sql&ie=utf-8&oe=utf-8&rls=org.mozilla:ru:official&client=firefox-a&gws_rd=cr&ei=t_bcUvXrE4fe4QTAqoGQAg


Black777   (2014-01-20 13:31:00) [3]

А можно ссылочку на информацию материал изучить?


Плохиш   (2014-01-20 13:15:00) [4]

Это расширение для твоих 1 и 3 вариантов.


Black777   (2014-01-20 13:07:00) [5]


> Используем параметры.

Что за параметры?


Плохиш   (2014-01-20 12:59:00) [6]


> Black777   (20.01.14 09:54) [2]

То есть выбор из 2х вариантов: написать sql-запросы ручками или отдать эту рутину ado-компонентам. Остаëтся определиться с вопросом, что правильнее, ехать куда-либо на такси или на своëм автомобиле?

PS. А книжку-какую по программированию в делфи для баз данных всë-таки рекомендую приобрести.


Ega23   (2014-01-20 12:58:00) [7]

Вариант 4.
Используем параметры.


clickmaker   (2014-01-20 10:12:00) [8]

вариант 1 в общем случае чреват sql-инъекциями.
вариант 2 вполне, если нет нужды запретить прямой доступ приложения к таблицам БД. В таком случае - вариант 3


Black777   (2014-01-20 09:54:00) [9]


> Критерии "правильности" не озвучены.

Вариант№1. Создаем форму, кидаем туда Edit-ы. Затем загружаем в эти Edit-ы данные строки которую хотим отредактировать. Вносим изменения, сохраняем данные из отрдактированных Edit-ов в БД:

StartTransaction
AdoQuery1.SQL.Text:=' INSERT INTO.... VALUES ('+Edit1.Text+','Edit2.Text......)'
AdoQuery1.ExecSQL;
AdoQuery2.SQL.Text:=' INSERT INTO.... VALUES ('+Edit7.Text+','Edit8.Text......)'
AdoQuery2.ExecSQL;
Commit;
.....
Rollback;
.....

Вариант№2. Создаем форму, кидаем туда DBEdit-ы. Редактируем данные в DBEdit-ах и сохраняем средствами ADO.

Вариант№3 Использовать хранимые процедуры.

Какие варианты более лучшие. Может есть еще варианты?


Плохиш   (2014-01-20 01:53:00) [10]


> Изучаю delphi в связке с mssql. Статей очень много, но очень
> часть в интернете полно БЕСТОЛКОВЫХ статей, и не хотелось
> бы изучать такой материал.

Ну да, сейчас кто-нибуть сдесь быстренько и персонально для тебя набъёт толковую статью.

> Вопрос №1: При загрузке строк таблицы пользователем №1 (предположим
> что одна запись редактируется пользователем №2) буду ли
> я видеть в отборе редактируемые строки другими пользователями
> (каке параметры влияют на это)?

Не будешь, пока он не сохранит изменения в базу и ты не загрузишь данные ещё раз.

> Вопрос №2: Как правильнее всего обеспечить редактирование
> какой либо записи в отдельной форме?

Критерии "правильности" не озвучены.


Наверх

Титульная страница Поиск, карта сайта Написать письмо