1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 121
|
|
1 | |
Создание таблицы динамически15.05.2014, 09:53. Показов 2073. Ответов 17
Метки нет (Все метки)
Здравствуйте всем. Возник вот такой вопрос: как создать новую таблицу имя таблицы чтобы взялось из edit.
0
|
15.05.2014, 09:53 | |
Ответы с готовыми решениями:
17
Не обрабатываются события в динамически добавленых строках таблицы Создание компонент динамически Динамически создание переменных Создание списка динамически |
4217 / 3058 / 583
Регистрация: 21.01.2011
Сообщений: 13,205
|
|
15.05.2014, 10:06 | 2 |
Послать запрос CREATE TABLE вестимо. Но для этого нужно не только имя таблицы, но и описание полей.
Кроме того, возникает вопрос в целесообразности этого действия. В подавляющем большинстве случаев динамическое создание таблиц - это ошибка дизайна БД.
0
|
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 121
|
|
15.05.2014, 10:20 [ТС] | 3 |
просто у меня имеется таблица с клиентами. при добавлении нового клиента нужно чтобы имя фамилия отчество дата и все такое вносилось в таблицу с именем клиент. в тоже время чтоб создалась таблица на данного клиента в более подробном описании. у меня просто программа стоматологическая клиника.
Добавлено через 2 минуты описание полей тоже должно создаваться, но уже одинаковое так сказать будет по шаблону, а вот имя таблицы должно быть именно браться из editА
0
|
129 / 129 / 41
Регистрация: 17.10.2013
Сообщений: 335
|
|
15.05.2014, 10:45 | 4 |
достаточно таблицы "клиенты" и "подробное описание" связать по полю id_клиента
0
|
1075 / 988 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
|
|
15.05.2014, 10:46 | 5 |
Судя по заявлению:
Нельзя так делать БД. Все данные по клиентам должны сохраняться в одной таблице. С сопутствующими справочниками-таблицами.
0
|
4217 / 3058 / 583
Регистрация: 21.01.2011
Сообщений: 13,205
|
|
15.05.2014, 10:46 | 6 |
Почему нельзя данные по всем клиентам хранить в одной таблице? Так всегда и делают. Своя таблица на каждого клиента - это мрак. Если 10000 клиентов - значит 10000 таблиц? Представляю БД мобильного оператора, у которого м.б. и 100тыс клиентов, если не миллион.
Я уж не говорю про то, что шибко неудобно писать запросы (например, нужен сводный отчет по некоторым клиентам - это же много-много UNION)
0
|
1075 / 988 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
|
|
15.05.2014, 10:49 | 7 |
Сейчас ТС начнет говорить, что столько клиентов не будет и пр. оправдания начинающего разработчика БД.
0
|
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 121
|
|
15.05.2014, 12:23 [ТС] | 8 |
имел дело но только с простейшими базами данных. а теперь нужно развернуться обширно. тема у меня звучит вот так: Автоматизированное рабочее место администратора стоматологической клиники. и вот в чем начинается вся загвостка диагноз может быть написан к примеру символов так - 400 а максимально текстовый тип в access поддерживает если не ошибаюсь 255 символов. вот поэтому для каждого клиента было бы проще сделать каждому свою таблицу.да и было бы путаницы меньше(как мне кажется). да и с преподами разговаривал они тоже советуют так сделать
0
|
1075 / 988 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
|
|
15.05.2014, 12:32 | 9 |
Как говорится: хозяин-барин, но непонятно как вам помогут отдельные таблицы для каждого клиента обойти
аксессовское ограничение в 255 символов текстового типа. Опять же, в аксессе есть тип "безразмернного" текста, который они зовут МЕМО.
0
|
4217 / 3058 / 583
Регистрация: 21.01.2011
Сообщений: 13,205
|
|
15.05.2014, 12:59 | 10 |
Если бы даже ограничение в 255 символов нельзя было обойти, я бы просто создал 2-ю таблицу, связанную с первой, в котором бы продолжался текст. Это по любому лучше, чем таблица на каждого клиента.
Добавлено через 1 минуту С точки зрения написания запросов как раз проще иметь дело с одной таблицей.
0
|
1075 / 988 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
|
|
15.05.2014, 13:03 | 11 |
А преподавателей надо учить общепринятым, а, следовательно, оптимальным, решениям таких задач.
0
|
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 121
|
|
15.05.2014, 14:04 [ТС] | 12 |
но вот смотрите в тоже время у меня клиент первый раз пришел его зарегистрировали(сделали 1 зуб), через неделю он пришел сделал другой зуб получается запись сотрется. а там есть и гарантия и все тому подобное. каждый раз добавлять одного и того же человека не есть хорошо.
0
|
Модератор
3492 / 2614 / 742
Регистрация: 19.09.2012
Сообщений: 7,977
|
|
15.05.2014, 14:19 | 13 |
У тебя должно быть:
- таблица Клиенты, где хранится инфа: ФИО, адрес, тел., ID-клиента и т.п. - таблица Окзанные_услуги, где хранится: ID-клиента, ID-врача, услуга, дата, время и т.п. И зная ID-клиента ты можешь получить из таблицы Окзанные_услуги список всех услуг, оказанных конкретному клиенту.
0
|
1075 / 988 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
|
|
15.05.2014, 14:20 | 14 |
А вы что, увидели в наших советах такие в которых говорится об удалении записей?
С точки зрения хранения данных, нет никакой разницы: хранить ли данные о клиенте в записях одной таблицы, или для каждого из них создавать свою таблицу. Но есть разница между этими способами, и очень большая, в удобстве доступа к таким данным. Если ваша работа сведется только к тому что будут создаваться таблицы на каждого из клиентов, то и об удобстве не стоит говорить. Но, наверняка, будут и другие операции с клиентскими данными: их редактирование, поиск клиента при повторных обращениях и прочих операциях. Ну и как вы представляете себе поиск по сотням таблиц, когда нужно будет найти клиента уже обращавшегося за помощью?
0
|
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 121
|
|
18.05.2014, 10:06 [ТС] | 15 |
0
|
Модератор
3492 / 2614 / 742
Регистрация: 19.09.2012
Сообщений: 7,977
|
|
18.05.2014, 11:56 | 16 |
Сделай подчиненную таблицу (средствами Дельфи или через SQL запрос).
Добавлено через 44 секунды Вот первый попавшийся пример: Подчиненные таблицы
0
|
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 121
|
|
22.05.2014, 15:47 [ТС] | 17 |
возникла такая проблема. Тип данных в таблице access мемо (т.к. мне нужно вводить большой текст) когда пытаюсь получить от туда данные он выводит только те столбцы в которых тип данных не мемо. подскажите как устранить такую проблему. и еще вопрос как брать данные с подчененной таблицы и вывести их в label. это в все толжно происходить когда я выбираю клиента из списка в первом grid.
0
|
129 / 129 / 41
Регистрация: 17.10.2013
Сообщений: 335
|
||||||
24.05.2014, 00:43 | 18 | |||||
0
|
24.05.2014, 00:43 | |
24.05.2014, 00:43 | |
Помогаю со студенческими работами здесь
18
Создание Label динамически Создание строки динамически Создание подкнопки динамически Создание таблиц динамически Создание компонента динамически Создание формы динамически Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |