Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Регистрируясь, я даю согласие на обработку данных и условия почтовых рассылок.
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Погрузитесь в игру Бильярд 3D: русский бильярд — почувствуйте атмосферу настоящего бильярдного зала!

Бильярд 3D: Русский бильярд

Симуляторы, Спорт, Настольные

Играть

Топ прошлой недели

  • solenakrivetka solenakrivetka 7 постов
  • Animalrescueed Animalrescueed 53 поста
  • ia.panorama ia.panorama 12 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая «Подписаться», я даю согласие на обработку данных и условия почтовых рассылок.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
0 просмотренных постов скрыто
166
sovietsova
MS, Libreoffice & Google docs

Приводим данные в порядок с помощью Microsoft Access (часть 2)⁠⁠

3 года назад

Продолжим совершенствовать нашу базу данных и функционал по работе с ней.

Добавим в таблицу contacts новое поле [active], которое будет характеризовать активность контакта (активен или не активен). Тип данных установим Логический. Логический (или булевый от англ. boolean) тип данных имеет всего два значения ИСТИНА или ЛОЖЬ (также может обозначаться: как 1 или 0, да или нет, true или false) применяется в тех случаях, где состояние объекта может быть охарактеризовано этими двумя значениями, во многих случаях этого достаточно. В дальнейшем этот признак позволит фильтровать выборку данных и строить логику работы. Например, показать список только активных контактов.

В настройках Свойства поля, которое появляется в нижней части экрана при редактировании поля, в свойство Значение по умолчанию запишем =1, теперь каждая новая запись по умолчанию будет считаться активной, однако все предыдущие записи будут неактивными, так как это поле мы добавили уже после заполнения таблицы данными. В идеальном случае поля таблиц следует проектировать так, чтобы в последующем не приходилось их добавлять, или добавлять по минимуму.

В таблице contacts, поле [active] получило возможность взаимодействия с ним через элемент управления Checkbox,во многих случаях это удобно, хотя в программе за ним скрывается символ 1 или 0, в зависимости от наличия или отсутствия “галочки”.  Мы бы могли удалять записи неактивных контактов, но удалять какие-либо записи в базах данных нужно с особой осторожностью, как правило записи особым образом отмечаются или переносятся, и при необходимости к ним всегда можно вернуться.

Теперь обратим внимание на поля [phone1] и [phone2]. Исходя из опыта мы предположили, что у человека может быть более одного телефонного номера и создали два поля под эти цели, но а если у человека три телефонных номера и даже четыре? Логично предположить и создать под эти цели максимальное количество полей (помним, что вносить все номера в одно поле через запятую противоречит принципу минимальной неделимости), допустим создадим десять полей для хранения десяти телефонных номеров. И делать мы этого не будем по причине того, что система управления базами данных резервирует память под хранение данных и даже при наличии одного человека с десятью телефонными номерами большое количество пустых мест (рисунок ниже) будет замедлять работу нашей базы, когда она начнет разрастаться данными.

Создадим таблицу phones.

В ней же создадим ключевое поле [id] с типом данных Счетчик, поле [userid] – тип данных Числовой и [phone] – тип данных Текстовый. Поле [userid] является внешним ключевым полем, сюда мы будем записывать значение поля [id](которое соответствует конкретному человеку) из таблицы contacts и его номер телефона, столько раз сколько номеров телефонов у него есть.

Перенесем номера телефонов из таблицы contacts в таблицу phones и удалим поля [phone1] и [phone2].

На панели инструментов откроем вкладку Работа с базами данных и вызовем Схему данных. В конструкторе Схемы данных вызовем Отобразить таблицу и выберем из списка таблиц таблицу contacts и phone. Мы видим модели наших таблиц с соответствующими полями.

Наведем курсор мыши на поле [id] таблицы contacts, нажмем на него левой кнопкой мыши и не отпуская перенесем на поле [userid] таблицы phones. В появившемся диалоговом окне отметим пункт Обеспечение целостности данных (в таблице phones мы не сможем записать номер телефона для несуществующего контакта) и применим изменения.

Теперь наши таблицы связаны отношением – Один ко многим, это значит, что один человек из таблицы contacts может иметь много телефонных номеров в таблице phones. Таким образом наша таблица будет расти вниз, а не в ширь, как это предполагалось у нас изначально.

Откроем форму contacts из панели объектов базы. Теперь наши поля формы [phone1] и [phone2] ссылаются на несуществующие поля таблицы contacts, все верно, мы их удалили.

Откроем форму contacts в режиме Конструктора уже знакомым для нас способом. Здесь мы имеем возможность в графическом режиме изменять размеры и расположение наших полей, а так же менять их свойства, и много чего другого. Выделим область расположения “битых” полей и удалим их.

Реализуем возможность ввода нескольких телефонов для одного контакта. В режиме конструктора формы на верхней панели инструментов, из раздела Элементы управления мы можем добавлять элементы привычные нам по работе с большинством программ, имеющих графический интерфейс (кнопки, выпадающие списки, чекбоксы, радиокнопки, списки и т. п.). Выберем элемент управления Подчиненная форма/отчет (считается, что это неудачный перевод локализации MS Access, логичнее  этот элемент управления звучал бы как Подчиненная таблица). На рабочем поле формы курсор мыши изменит свой вид, выделим произвольную область на свободном месте и вставим элемент управления, в дальнейшем мы сможем отредактировать его размер в удобный для работы.

В появившемся Мастере подчиненных форм выберем источником подчиненных данных Имеющиеся таблицы и запросы, далее во втором окне из выпадающего списка таблиц выберем таблицу phones, из левого списка полей таблицы phones выберем поле [phone] и переместим его в правый список соответствующей кнопкой.

Третий этап диалога предлагает нам связать подчиненные данные с таблицей contacts, если же мы выберем <отсутствие> такой связи, в подчиненной таблице, мы просто будем видеть полный список телефонов всех контактов, выберем первый пункт из списка, который соответствует нашей схеме связи, иными словами мы говорим – Показать все телефоны для такого-то контакта. Сохраним работу мастера, сохраним изменения в конструкторе формы.

На панели инструментов, в подразделе Сервис нажмем Добавить поля и перетащим поле [active] на макет формы. Сохраним изменения и выйдем из режима конструктора.

Теперь на форме contacts, в окне подчиненной таблицы,  перемещаясь по записям контактов сможем видеть и добавлять необходимое количество телефонов для конкретного контакта, все добавления будут записываться в таблицу phones. Добавим новый телефон для первого контакта и в таблице phones появится еще один телефон, заметьте поле [userid] таблицы phones заполняется автоматически соответствующим [id] (которое идентифицирует конкретного пользователя) из таблицы contacts. Также у нас есть возможность изменять “галочкой” активность контакта и эти изменения тоже будут отражаться в таблице contacts.

Показать полностью 15
[моё] Microsoft office Microsoft Access Windows База данных Компьютер Длиннопост
30
40
Pigletto
Pigletto
Отдел кадров

Немой. Продолжение "Пукнул и уволился"⁠⁠

3 года назад
Немой. Продолжение &quot;Пукнул и уволился&quot;

Про ту же негласную «кадровишную» базу товарищ рассказал еще историю.


К ним шел претендент на очень хорошую должность. Устраивался впервые, ранее в этой организации не работал.


По результатам прохождения всех этапов обошел двух конкурентов, которые уже работали в системе и были рекомендованы сотрудниками.


Дошел до финальной стадии, когда осталось профтестирование с начавшими входить в моду психологами.


И вот психологиня знакомится с материалами по нему и заглядывает в «ту» базу.

Там пометка «Немой. Жестко!».


Она не стала удивляться, подумала, что вербальный навык для его работы не требуется, должность была связана со сложным технологическим процессом. Подготовила вопросы для устного батла так, чтобы отвечать на них можно было бы «да» или «нет», т.е. кивка головы было бы достаточно.


Люди, когда сталкиваются с немыми, часто стараются говорить с ними медленнее и громче обычного, как будто человек не нем, а глух. Со стороны выглядит, что еще и туп.


И вот она начала его тестировать, громко и медленно предупредив, чтобы он отвечал на ее вопросы кивками, обозначающими «да» или «нет».


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


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

Та от звука его голоса уронила ручку. Говорит ему: «Так Вы не немой? Извините!».

А он ей тоже говорит: «А Вы не глухая? Я тоже не понял, простите!».


Когда разобрались, выяснилось, что отметку «немой» второпях поставила замша начальника отдела кадров, имея в виду «не мой», т.е. не ее протеже (ее кандидат завалился, не выдержав конкуренции с Петровым). Она была недовольна, что отсеяли ее кандидата и таким образом хотела насолить Петрову, чтобы его проверяли "и в хвост, и в гриву".


Петрова взяли на работу, но для обоснования недоразумения пришлось напридумывать небылиц, чтобы не палить «ту» базу и кадровиню)


Всем хороших выходных и напоминаю о вакансии руководителя отдела кадров!

Показать полностью 1
[моё] Отдел кадров Увольнение Конфуз База данных Личное дело Длиннопост Зарплата Начальство Поиск работы Собеседование Профессия Коллеги
4
533
Pigletto
Pigletto
Отдел кадров

Пукнул и уволился⁠⁠

3 года назад
Пукнул и уволился

Часто пользуюсь такси, заказываю через приложение. Езжу всегда на заднем правом сиденье по диагонали от водителя.


Последнее время стала замечать, что когда сажусь в ожидающее меня такси, переднее пассажирское сиденье уже отодвинуто, чтобы на "моем" заднем месте было просторнее сидеть.


Один разговорчивый таксист на мой вопрос ответил, что у таксистов есть функционал в приложении, где они оставляют заметки о клиентах в приметных случаях. Бывает даже, что клиента с "плохими отзывами" водители могут не брать, чтобы он из-за своего склочного характера не снижал звездочный рейтинг о поездке.


Может быть он и пошутил для поддержания разговора, но я вспомнила, что в начале 2000-х, когда менеджерам только устанавливали специальное программное обеспечение,  на экране с заполняемой формой обратила внимание на примечание  "маленький ребенок, не звонить после 23:00".

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


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


Тоже на заре 2000-х он работал на гражданке в крупной коммерческой организации с филиалами в субъектах РФ.

Когда работник переходил из одного подразделения в другое, помимо передаваемого личного дела за ним еще в некой базе числилась отметка с краткой характеристикой типа "редкий муд**ло", "тырит бумагу", "трое детей, вечный больняк", "вкусные торты на д/р" и т.п.

Такие же отметки ставились при увольнении. Эта информация была особенно ценна, т.к. увольнение, как правило, оформлялось по собственному желанию, но истинные причины в основном были вынужденные. В личных делах эта информация официально никак не отражалась.


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


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

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

В их "подпольной базе" стояла отметка о причине увольнения - "пукнул".


Товарищ не понял ситуацию, стал звонить кадровикам филиала, мол что там у вас за опечатка или что, в чем причина. Нашли кадровичку, которая ставила отметку (на тот момент она вышла на пенсию).

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

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

А человек он был очень скромный и застенчивый. Извинился, вышел из кабинета и уволился.


Как его потом ни пытались найти, чтобы вернуть на работу, т.к. он был действительно ценным специалистом, ничего не вышло, он сменил номер телефона и место жительства.


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


Она сама это тоже переживала, тоже пыталась его искать потом, но увы.


Всем хорошей пятницы)


И.о. руководителя отдела кадров.



--------------------- Продолжение про "кадровишную" базу ---------------------------------

Показать полностью 1
[моё] Отдел кадров Увольнение Конфуз База данных Личное дело Длиннопост
106
106
sovietsova
MS, Libreoffice & Google docs

Приводим данные в порядок с помощью Microsoft Access⁠⁠

3 года назад

А что если бы была такая программа, где бы мы централизованно и структурированно хранили наши однотипные данные и при необходимости вставляли их в типовые шаблоны документов? Есть такая программа и это система управления базами данных (СУБД) Microsoft Access из пакета Microsoft Office. Простыми словами это программа которая хранит ваши данные в таблицах, в удобном для последующей работы виде. В отличии от Excel в базах данных более строгие условия по структуре данных и работе с ними, что дает преимущества при их использовании. Ну не думает же вы, что ваш банковский счет ведется в Excel.


Если ваш пакет офиса не включает программу MS Access придется ее доустановить.

Версия 2010 и выше принципиально не отличаются, по крайней мере для наших ознакомительных целей.

Запускаем Access, указываем путь и имя нашей базы. Для примера создадим вымышленную базу контактов. Используем для именования файла латиницу, можно и кириллицей писать, но с системными объектами лучше не шутить и писать на родном для операционной системы языке.


_____________________________________________________________________________________________________

_____________________________________________________________________________________________________

Главное окно встречает нас шаблоном таблицы, которую мы должны доработать под себя. Интерфейс программы и элементs управления привычны для пользователей MS Office

С таблицей мы можем работать в режиме “Таблица” и “Конструктор”

Перейдем в режим “Конструктор”, при этом Access попросит нас задать имя таблицы. Помним, что такие вещи лучше именовать латиницей и без пробелов. Назовем нашу таблицу – contacts. Правилом хорошего тона является именование таблиц именем, которое явно отражает то, что в них хранится.

В реляционных базах данных приняты следующие правила и стандарты:

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


-поле содержит отдельную сущность (характеристику) описываемого объекта - [фамилия] [имя] [дата_рождения] [телефон] [адрес_эл_почты]


-строки таблиц называются записями, хотя и строкой их называть допустимо


-поля должны быть атомарными (неделимыми), то есть – фамилия, имя и отчество должны быть в разных полях


-каждое поле имеет только один тип данных (текст, дата, число)


На рисунке поле с ключиком так и называется – ключевое поле, и все его значения должны быть уникальными. Это поле работает как паспорт для человека, могут быть абсолютные однофамильцы с одинаковой датой рождения, но одинаковых паспортов быть не может.

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

Как уже было сказано – поле имеет Тип данных. Его мы выбираем в зависимости от того, какими данными мы будем характеризовать наши сущности. Для поля – [фамилия] мы явно выберем текст, для поля [дата_рождения] мы явно выберем дату/время. И если для поля - [фамилия] мы выберем число, то при заполнении таблицы программа не даст нам записать текст, а только числовое значение, а нам этого не надо, значит правильно выбираем типы данных.

Тип данных – Счетчик, будет сам заполнять ключевое поле уникальными значения начиная с 1 и т. д. Access не даст возможности редактировать это поле, зато все записи таблицы будут уникальными.

Создадим поля нашего справочника контактов:

[id] – тип данных Счетчик (ключевое поле)

[name] – тип данных Текстовый

[surname] – тип данных Текстовый

[email] – тип данных Текстовый

[phone1] – тип данных Текстовый

[phone2] – тип данных Текстовый

[regdate] – тип данных Дата/время

При выборе типа данных, в нижней части окна конструктора мы можем настроить дополнительные свойства поля. Например, мы можем вставлять текущую дату в поле [regdate] (дата регистрации) при создании записи в таблице contacts. При нажатии на кнопку свойства – “Значение по умолчанию” откроется Построитель выражений.

Выберем из встроенных функций Даты и времени функцию Date(). Сохраним изменения в Построителе выражений и конструкторе таблиц и перейдем в режим заполнения таблицы.

Наша таблица готова к заполнению данными.

Заполним таблицу вымышленными персонажами. Поле [id] и [regdate] заполняются автоматически.

Создадим для нашей таблицы форму для заполнения. На вкладке Создание вызовем Мастер форм и в диалоговом окне мастера выберем те поля, которые нам понадобятся на форме, выберем все кроме полей [id] и [regdate], они у нас заполняются автоматически. Жмем далее и соглашаемся на предложенные мастером значения по умолчанию.

Наша форма готова, на ней только те поля которые нам нужны. Слева в навигаторе объектов у нас появился новый объект – форма contacts.  Внизу окна видим панель навигации по записям. На этой же панели нажмем Добавить новую запись и введем еще одного выдуманного персонажа.

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

Перейдем в нашу таблицу и увидим добавление новой записи.

В процессе накопления нашей базы нам потребуется передавать данные для работы другим пользователям. На в кладке Внешние данные в разделе Экспорт нажмем на пиктограмму с логотипом Excel. Укажем путь для сохранения файла электронной таблицы и отметим 1 и 2 пункты меню.

Теперь мы можем работать с этим файлом удобным для нас способом, а наши данные надежно хранятся в базе данных. Это лишь знакомство с системой Access.

Access хорошо взаимодействует с программа из MS Office, имеет много встроенных средств по работе с данными, а с помощью встроенного языка программирования VBA можно расширять функционал работы.
Показать полностью 19
[моё] Microsoft office Microsoft Access Windows База данных Компьютер Длиннопост
39
3
IIInaga

Помогите с настройкой Oracle 12c RAC⁠⁠

3 года назад

Здравствуйте! Занимаюсь настройкой Oracle 12c RAC на Oracle Linux 7. Есть 2 ноды, которые подключены к СХД. Ранее база крутилась на Oracle 11g не кластерная, ОС Windows Server 2012 R2. При переносе базы начались жуткие зависания.

Изменил конфигурацию памяти SGA и PGA, внес некоторые таблицы в In-Memory и производительность улучшилась.

Но сейчас в интервале 13:00-15:00 запросы начинают считывать данные не из памяти, а с диска и грузят работу базы. Перечитал много информации и не могу понять куда смотреть. Помогите пожалуйста советом, или дайте направление куда смотреть.

Дополнительную информацию могу дать в комментариях.

Oracle База данных Нужен совет Текст
8
rick1177
rick1177

Вопрос к программистам - генератор данных для тестовой базы⁠⁠

3 года назад

Товарищи, добрый день.

Подскажите, плиз, может быть знаете, какой есть максимально широкий сервис для генерации тестовых данных. Я вроде нашёл одну ссылку, где, например, обозначен сервис https://mockaroo.com/. Но он просит, чтобы я его посещал через VPN, да и хотелось бы российский аналог.

Программирование База данных Разработка Обучение Текст
18
5
fromNovosibirsk
fromNovosibirsk

Роскомнадзор внёс новое требование, после утечек баз данных и шумихи вокруг Яндекса⁠⁠

3 года назад

Росскомнадзор обновил таблицу слов используемымых СМИ для описания происшествий.
Так теперь следуя новой редакции, все СМИ будут обязаны заменять не точную формулировку: "Утечка баз данных", на более правильный и более полный вариант.
Теперь подобные происшествия будут именоваться как: "Децентролизованный бэкап базы данных, выполненный третей стороной" так следует из новой редакции документа.

[моё] Fake News Яндекс Роскомнадзор База данных Утечка данных СМИ и пресса Юмор Текст
16
FubaL
FubaL

ОЗОН сливает данные?⁠⁠

3 года назад

Привет всем!

Сегодня столкнулся с весьма забавной ситуацией.

Отправил сегодня в ВатсАп ссылку на товар в ОЗОНе. Время 11.40  

И, сразу же на телефон приходят СМС отхрен пойми кого с предложением хрен пойми какой работой.

Вопрос в саппорт, ответ шаблонный.

Есть представители ОЗОНа на Пикабу?

Показать полностью 3
[моё] OZON Персональные данные Мошенничество Телефонные мошенники Интернет-мошенники База данных Длиннопост Негатив
21
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии