Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/13: Рейтинг темы: голосов - 13, средняя оценка - 4.92
0 / 0 / 0
Регистрация: 02.04.2016
Сообщений: 13
MS Access

Программно создать таблицу в БД

12.06.2017, 17:57. Показов 2659. Ответов 17

Студворк — интернет-сервис помощи студентам
Мне нужно . Написал я в общем вот такую херь.
Delphi
1
2
3
4
5
6
7
8
9
10
 
begin
      Form1.qry2.SQL.Clear;
      Form1.mmo1.Text:='CREATE [TEMPORARY] TABLE '+Form1.qry1.fieldByname('адрес').AsString+' ( Colvo int,  Material string)'+'  \r SELECT * FROM '+Form1.qry1.fieldByname('адрес').AsString;
   end;
   begin
 Form1.qry2.SQL.Add(Form1.mmo1.Text);
   if  Form1.qry2.Active=False then
    Form1.qry2.Active:=True;
   end;
С SQL дела не имел раньше, да и c Delphi7 только начал работать. Помогите чайнику.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
12.06.2017, 17:57
Ответы с готовыми решениями:

Программно создать таблицу
Помогите пожалуйста:'( Кто-нибудь знает как программно создать в Delphi таблицу формата .dbf попроще...Подскажите если знаете...Заранее...

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

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

17
0 / 0 / 0
Регистрация: 02.04.2016
Сообщений: 13
12.06.2017, 18:07  [ТС]
Вот такую ошибку выдает.
Миниатюры
Программно создать таблицу в БД  
0
 Аватар для Пытливый
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
12.06.2017, 18:14
ну а посмотреть на то что у вас в Form1.mmo1.Text получается не судьба?
0
0 / 0 / 0
Регистрация: 02.04.2016
Сообщений: 13
12.06.2017, 18:19  [ТС]
Вот что у меня в memo
0
0 / 0 / 0
Регистрация: 02.04.2016
Сообщений: 13
12.06.2017, 18:21  [ТС]
0
 Аватар для Пытливый
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
12.06.2017, 18:38
Очевидно, что такой синтаксис не прокатит.
Во первых уберите [Temporary] не поддерживается в акцесе эта инструкция.
Во вторых имя таблицы должно быть взято в квадратные скобки если оно составное, как в вашем случае:
create table [Кутузова 40] ...
В третьих, создание таблицы и получение выборки по ней, это две разные операции и выполняются они последовательно, поэтому select * from Кутузова 40 тут не к месту
В четвертых, для селектов выполняется то же правило составных полей что и при создании т.е. [Кутузова 40]
В пятых, если вы хотели создать таблицу на основе выборки, то делается это синтаксически не так.
1
0 / 0 / 0
Регистрация: 02.04.2016
Сообщений: 13
12.06.2017, 19:46  [ТС]
Если не сложно объясни пожалуйста, как создать таблицу внутри программы?Я использовал все что нашел и понял на просторах интернета.
Миниатюры
Программно создать таблицу в БД  
0
0 / 0 / 0
Регистрация: 02.04.2016
Сообщений: 13
12.06.2017, 20:15  [ТС]
Пытливый, Нажимаю на "Добавить объект"- Выходит форма с редактированием таблицы Строй-Объектов
Нажимаю "Добавить базу данных"- Создается таблица в которой будут отображены строительные материалы требуемые на выбранном в первом Dbgrid Строй-Объекте(адресе). Хотел сделать создание таблицы с именем равным адресу объекта.НО как сделать это?
0
 Аватар для Пытливый
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
12.06.2017, 22:28
Вы не с того начали. Создание интерфейса это второй шаг, а первым у вас должен быть создание рабочей модели базы данных. Давайте начнем плясать от печки. Какая изначальная задача поставлена?
0
0 / 0 / 0
Регистрация: 02.04.2016
Сообщений: 13
13.06.2017, 03:50  [ТС]
Пытливый, Нужна одна база данных с адресами, к этим адресам редактируемая база со списком материала и его количества. К примеру
эмульсия l 10 литров
Профиль l 30 шт.
P.S:Начал с того что знал.
0
 Аватар для krapotkin
6849 / 4676 / 1464
Регистрация: 14.04.2014
Сообщений: 20,671
Записей в блоге: 21
13.06.2017, 09:53
только нужно две разных таблицы для товара
справочник товаров (код товара, наименование)
и движение товара - (код товара, время, количество)
количество положительное - приход товара
количество отрицательное - расход. продажа, списание и т.д.
третья таблица - доставка (код товара, кол-во, адрес-телефон-фио)
1
0 / 0 / 0
Регистрация: 02.04.2016
Сообщений: 13
13.06.2017, 11:52  [ТС]
krapotkin, А это очень даже нужно, спасибо,но мне хотя бы с этим разобраться
0
 Аватар для Пытливый
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
13.06.2017, 12:50
Кроме операций с товаром(материалами) вам видимо надо будет еще учитывать клиента, а это физическое и юридическое лицо, а это две разные структуры. Если же еще будет контактный или иной телефон, то его тоже желательно в отдельную структуру вынести. Ну и наконец для связывания всего этого в единую, рабочую схему нужна будет одна или несколько промежуточных таблиц. Так-что вроде простенькая задачка разрастается до вполне приличной БД в десяток таблиц.
Идем далее. Каким образом предполагается использовать эту базу данных? Будет ли она установлена в одном месте и использовать ее будет только один оператор или же в нескольких офисах?

Добавлено через 2 минуты
Схему базы данных вы можете нарисовать и в Акцесе, правда там без типов полей, что несколько ухудшает читаемость, но приемлемо для начала. Как сделаете схему, прикрепите сюда картинку - посмотрим.
И вот только после того, как у вас появится нормальная схема, можно будет делать и интерфейс под нее.
0
0 / 0 / 0
Регистрация: 02.04.2016
Сообщений: 13
14.06.2017, 23:19  [ТС]
Пытливый, Как то так что ли.....
Миниатюры
Программно создать таблицу в БД  
0
 Аватар для Пытливый
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
15.06.2017, 00:13
Любимая ошибка новичков - писать названия полей с пробелами. Для исключительно визуальной разработки может оно и ничего, но когда дело касается доработки напильником, то проблем не оберешься. Отсюда вывод: Все поля в БД должны быть без пробелов, т.е. не Наименование материала, а НаименованиеМатериала. Читабельности оно не потеряло, зато стало удобнее в работе.
Вторая распространенная ошибка - смешивать в одной БД английские и русские имена полей. Рано или поздно, но вы обязательно перепутаете в какой таблице у вас ID, а в какой Код. Отсюда вывод: Имена полей должны быть однообразны, либо английские либо русские.
Я бы еще имена ключевым полям дал более информативные, например не Код, а КодЮрЛица. Так намного проще понять по каким полям идут связи между таблицами.

Ну а что касается самой схемы БД...
Вы пробовали вносить данные ручками в ваши таблицы? Вот возьмите что-то конкретное и начните разносить по вашим таблицами. В процессе внесения у вас наверняка появятся проблемы, которые потребуют доработки схемы.
ПС: Что такое таблица Кутузова 40_1 ? Это склад, обслуживаемый объект или что?
0
0 / 0 / 0
Регистрация: 02.04.2016
Сообщений: 13
15.06.2017, 08:48  [ТС]
Пытливый, Строго но справедливо, согласен с вами. Я думал на каждый объект создавать новую таблицу с перечислением нужного материала в отдельной бд, т.к предположил что в будующем,когда бд станет очень большой нагрузка разделится на две бд. Так Кутузова_40 это адрес объекта находящегося в другой бд. Все так плохо?
0
 Аватар для krapotkin
6849 / 4676 / 1464
Регистрация: 14.04.2014
Сообщений: 20,671
Записей в блоге: 21
15.06.2017, 09:00
таблица - это не объект. это набор объектов с одинаковыми характеристиками, которые составляют поля таблицы
так что одна таблица будет хранить все ваши объекты
а другие таблицы ссылаться на нее и хранить информацию также по всем объектам
запросы выделяют из общей информации нужную и позволяют работать с частью, относящейся к выбранному объекту
0
 Аватар для Пытливый
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
15.06.2017, 11:29
Не думаю, что в ближайшее время вам грозит столкнутся с проблемой переполнения в БД. Если вы уже внесли изменения в схему, то давайте новую картинку. И вот вам еще одно замечание по схеме - как вы собираетесь ЮрЛицо и ФизЛицо привязывать к 2 и более объектам?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.06.2017, 11:29
Помогаю со студенческими работами здесь

Как программно создать таблицу?
подскажите как программно создать что-нибудь на подобие такой таблички? я нигде не могу найти как объединять ячейки и как потом к ним...

Программно создать таблицу в Excel
создать через форму delphi в ms excel таблицу квадратов чисел от 1 до 99 . Подскажите ,умоляю . Очень срочно надо . Завтра последний день...

Создать программно таблицу в .doc
Всем доброго времени суток, пишу программу которая в конце работы должна проверенный и откорректированный материал вывести в виде таблицы в...

Программно создать таблицу в Fragment
Добрый день форумчане, возник у меня такой вопрос. Пытаюсь программно создать таблицу в Fragment, но что-то не получается собственно...

Как создать таблицу в бд access программно?
Здравствуйте! Подскажите пожалуйста, как создать таблицу в бд access программно?


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

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru