С Новым годом! Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 01.02.2018
Сообщений: 109

Слияние трёх скриптов в один

21.08.2019, 15:26. Показов 1835. Ответов 34
Метки sql (Все метки)

Студворк — интернет-сервис помощи студентам
Есть три таблицы:
READERS(информация о читателях) c полями RDR_ID(номер читателя),Code(отделение, дневное/заочное),Name(ФИО), Birthday(День рождения),Passport(паспорт),Address(адре с), Pager(факультет), Course(курс),Bookpoint(пункт выдачи литературы)
BOOKPOINTS: IDP(идентификатор пункта выдачи),SHORTNAM(краткое название пункта выдачи),STATUS
RDRBP: RDR_ID, IDP

И есть,хм, скрипты:
SQL
1
SELECT * FROM RDRBP WHERE RDR_ID LIKE '__19___%';
SQL
1
SELECT RDR_ID, BOOKPOINTS FROM READERS WHERE COURSE = '1';
SQL
1
INSERT RDRBP SELECT RDR_ID, IDP FROM READERS CROSS JOIN BOOKPOINTS WHERE COURSE = '1';
SQL
1
UPDATE READERS SET BOOKPOINTS = 'научный абонемент,сбо,учебный абонемент,художественный абонемент,читальный зал 1,читальный зал 2' WHERE COURSE = '1';
На стороне интерфейса эти пункты выдачи-чекбоксы.
Скрипты не мои и база тоже не моя-всё досталось от предшественницы.
Вопрос: Как эти скрипты можно объединить в один скрипт?
Буду очень благодарна за помощь.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.08.2019, 15:26
Ответы с готовыми решениями:

Списки: реализовать слияние трёх списков в один
Подскажите пожалуйста, как реализовать слияние трёх списков в один.

Возможно ли объединение трех графиков в одних осях с трех скриптов
Возможно ли объединение трех графиков в одних осях с трех скриптов?

Слияние трех массивов
Помогите пожалуйста написать небольшую программку. Даны три массива A, B, C Написать программу слияния этих массивов. Убидительная...

34
2810 / 1679 / 885
Регистрация: 14.04.2015
Сообщений: 5,723
22.08.2019, 08:54
LitleLady, они же про разное, зачем их объединять?
0
0 / 0 / 0
Регистрация: 01.02.2018
Сообщений: 109
22.08.2019, 09:32  [ТС]
Нет.... Не про разное... Оно в совокупности у моей предшественницы како-то ставило так, что система действительно ставила пункты выдачи... Я пробовала одним set-ом, но оно только записывает в поле, а не отмечает в системе....
0
2810 / 1679 / 885
Регистрация: 14.04.2015
Сообщений: 5,723
22.08.2019, 09:57
Цитата Сообщение от LitleLady Посмотреть сообщение
На стороне интерфейса эти пункты выдачи-чекбоксы.
то есть, каждый чекбокс отвечает за выполнение своего скрипта - это раз.
может, лучше объяснить, что должна делать программа? потому что я, если честно, вообще не вижу пока никакой смысловой нагрузки в данных 4-х запросах.
0
0 / 0 / 0
Регистрация: 01.02.2018
Сообщений: 109
22.08.2019, 10:29  [ТС]
Есть библиотечная программа в которую, в том числе, входит и модуль обслуживание. В этом модуле есть список читателей и в профиле каждого читателя должен стоять минимум один пункт выдачи, иначе выдача невозможна. Пункты выдачи в миниокошке, как я уже писала выше, представляют собой чекбоксы. После простановки галочек в чек-боксах, ну и после сохранения выбранных пунктов выдачи, читателю может выдаваться литература на выбранных пунктах выдачи.
0
1116 / 761 / 183
Регистрация: 27.11.2009
Сообщений: 2,272
22.08.2019, 10:32
Для начала напишите правильный INSERT. А именно, напишите список полей таблицы там, где INSERT (в круглых скобках).
0
2810 / 1679 / 885
Регистрация: 14.04.2015
Сообщений: 5,723
22.08.2019, 10:58
LitleLady, этот функционал для добавления новой карточки читателя?

Добавлено через 7 минут
то есть, "не для добавления", а "участвует в добавлении" ?
0
0 / 0 / 0
Регистрация: 01.02.2018
Сообщений: 109
22.08.2019, 11:07  [ТС]
Если читатель приходит ногами в библиотеку и его там записывают-да, это входит в профиль читателя. Но конкретно в данном случае, студент(например)=читатель. Технологических особенностей такого,гм, взаимообмена(есть ещё внутренняя база программы,в которой есть таблица Readers и все запросы идут через неё), к сожалению, пока что не знаю, но знаю, что когда студенты вытаскиваются из базы вуза,то пункт выдачи у них не проставляется и их надо ставить отдельно...
0
2810 / 1679 / 885
Регистрация: 14.04.2015
Сообщений: 5,723
22.08.2019, 11:26
LitleLady, это должно делаться автоматически в момент получения данных из базы вуза. без всяких чексоксов, инсертов и апдейтов.

Добавлено через 1 минуту
алгоритм должен быть унифицирован, а не раздроблен на обычных читателей и на студентов.
0
 Аватар для pincet
1654 / 1153 / 173
Регистрация: 23.07.2010
Сообщений: 6,910
22.08.2019, 11:48
вопрос - а зарадлидля это все нужно?
0
0 / 0 / 0
Регистрация: 01.02.2018
Сообщений: 109
22.08.2019, 12:29  [ТС]
Цитата Сообщение от AndreyVorobey Посмотреть сообщение
LitleLady, это должно делаться автоматически в момент получения данных из базы вуза. без всяких чексоксов, инсертов и апдейтов.
Про автоматически.....я ничего не делала, студенты(упоминаю только студентов так как это самая проблематическая часть...ввиду объёмов) попадают сразу и в Readers как только вузовская служба либо руками, либо импортом заливает студентов в студенческую базу(Students). Через sql server я вижу только бд students. Костяк бд библиотечной программы вообще нашла только в где-то в системных файлах в макетах в формате СУБД Access

Цитата Сообщение от AndreyVorobey Посмотреть сообщение
алгоритм должен быть унифицирован, а не раздроблен на обычных читателей и на студентов.
Читатели =студенты+сотрудники вуза и тд. Я потому и обратилась сюда....Не знаю как это унифицировать

Добавлено через 38 минут
Цитата Сообщение от pincet Посмотреть сообщение
вопрос - а зарадлидля это все нужно?
Чтобы не ставить по 6 галок в каждом из свыше 2000
читательских профилей руками.
0
2810 / 1679 / 885
Регистрация: 14.04.2015
Сообщений: 5,723
22.08.2019, 14:04
LitleLady, есть какой-нибудь флаг, что это студент?

Добавлено через 4 минуты
когда из базы вуза в вашу базу добавляются данные
0
0 / 0 / 0
Регистрация: 01.02.2018
Сообщений: 109
22.08.2019, 14:15  [ТС]
Нет. Просто у сотрудников и аспирантов университета номер заканчивается на а, например 170131а,остальные номера-студенты.Ну и у студентов, кроме факультета, ставится ещё курс и группа.
0
2810 / 1679 / 885
Регистрация: 14.04.2015
Сообщений: 5,723
22.08.2019, 14:19
LitleLady, библиотечная база на access, правильно понимаю?
0
 Аватар для pincet
1654 / 1153 / 173
Регистрация: 23.07.2010
Сообщений: 6,910
22.08.2019, 14:57
Цитата Сообщение от LitleLady Посмотреть сообщение
Нет. Просто у сотрудников и аспирантов университета номер заканчивается на а, например 170131а,остальные номера-студенты.Ну и у студентов, кроме факультета, ставится ещё курс и группа.

Не по теме:


серьезно? тогда "Пилите, Шура, они золотые" (с)

0
0 / 0 / 0
Регистрация: 01.02.2018
Сообщений: 109
22.08.2019, 16:11  [ТС]
Цитата Сообщение от AndreyVorobey Посмотреть сообщение
LitleLady, библиотечная база на access, правильно понимаю?
По-крайней мере файлы, которые лежат в подпапке db папки этой программы все аксессные....

Добавлено через 24 минуты
Пока что я додумалась только до того, что связь между 2 таблицами явно многое-ко-многим и к тому, что скрипт должен брать значения из 2 таблиц и писать в третью(из читателей брать айди читателя, из пункта выдачи-айди пункта/-ов), но тут я не уверена....Как это реализовать на sql я не знаю....Сбивает с толку многое-ко-многим....
0
2810 / 1679 / 885
Регистрация: 14.04.2015
Сообщений: 5,723
22.08.2019, 16:11
LitleLady, не зная всего процесса добавления, и ресурсов, задействованных в работе, трудно что-то однозначное посоветовать. По поводу этих 4-х запросов тоже. Они выдраны из контекста, и сам по себе не имеют особой связи друг с другом. Давайте сначала. Имеется 4 checkBox...если выбрать только первый, что-то произойдёт? на форме появится какая-то инфа?
я акцентирую внимание на то, что между ними нет никакой связи, потому что они выполняют операции с статическими условиями, они никак друг на друга не влияют.
0
0 / 0 / 0
Регистрация: 01.02.2018
Сообщений: 109
22.08.2019, 16:26  [ТС]
Цитата Сообщение от AndreyVorobey Посмотреть сообщение
Имеется 4 checkBox...если выбрать только первый, что-то произойдёт?
Да,читатель сможет взять литературу только на первом пункте выдачи.
Наверное я сначала попробую расписать алгоритм:
1) Выбрали нужного читателя из списка.
2) По нажатию на кнопку "Свойства" открывается профиль читателя, там есть, в том числе и такой пункт в профиле как "Пункты выдачи" к которому прикреплена кнопка, по нажатию на которую открывается окошечко с чекбоксами пунктов выдачи.
3) Выбирается нужный пункт/-ы выдачи.
4) При нажатии на кнопку "ок" в том же окошке, окошко закрывается. На стороне интерфейса в окне профиля появляется информация о пунктах выдачи(приложила скриншот)
5) Подтверждаем в профиле внесенные изменения. Примерно тут и происходит закрепление читателя за пунктом/-ами выдачи, то есть читатель может получать литературу только на тех пунктах, которые стоят у него в профиле, иначе не пропустит система.
6) Профиль закрывается.
Миниатюры
Слияние трёх скриптов в один  
0
0 / 0 / 0
Регистрация: 01.02.2018
Сообщений: 109
23.08.2019, 09:15  [ТС]
Почти наверняка вот это окошко профиля-это вытащенная из бд информация о читателе,таблица READERS (да,знаю,кэп), вон та маленькая кнопочка в "Доступные пункты книговыдачи" открывает маленькое окошко с чекбоксами пунктов книговыдачи, т.е. почти наверняка тащутся пункты из таблицы BOOKPOINTS. Когда всё это сохраняется оно,почти наверняка, всё(ну, id читателя и id доступных этому читателю пунктов выдачи) пишется в таблицу RDRBP....Связь многое-ко-многим......Как это реализовать одним скриптом? Я сама вижу тут только выборку студентов по определённому параметру, как дальше-не знаю...
0
 Аватар для pincet
1654 / 1153 / 173
Регистрация: 23.07.2010
Сообщений: 6,910
23.08.2019, 09:39
связь m:n реализуется введением граничной сущности
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.08.2019, 09:39
Помогаю со студенческими работами здесь

Слияние двух циклов в один
Как из двух цыклов сделать 1 втаком коде? var a = 3, b = 5, c = 1, sum1 = 0, sum2 = 0; for (c = 1; a * c <...

Слияние 2х массивов в один с сортировкой
Дали задание слить 2 массива в 3й, таким образом, что б конец первого был началом второго и отсортировать по уменьшению. Слить с помощью...

Осуществить слияние файлов в один
Имеются два файла сортировочных целых чисел All1 и All2 осуществить слияние файлов в один с элементами C1 C2 Cn+m m - количество...

Слияние массивов в один массив по убыванию
Даны три целочисленных массива A, B и С размера NA, NB, NC соответсвенно, элементы которых упорядочены по убыванию. Объединить эти массивы...

Слияние указанных текстовых файлов в один
В общем нужно написать командный файл. Задание: В каталоге хранятся текстовые файлы, в каждом из кото-рых от 10 до 100 строк (например,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru