![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Помогите написать запрос для добавления записи в таблицу dbf.
Есть таблицы bdf, нужно вносить в них изменения. Таблицы я научился подключать через ADO и BDE, а вот добавить запись я так и не могу. Я понимаю что надо SQL запросы писать, но не знаю как пишется запрос и куда его надо вводить. Пожалуйста не пишите что надо мне почитать книги, это мне не поможет, у меня появится больше вопросов чем ответов, я уже пробовал там все расплывчато написано а мне надо конкретно по моему примеру! Покажите мне конкретный рабочий пример, буду очень признателен! |
#2
|
|||||
|
|||||
![]() Цитата:
Код:
На изменение: Код:
где: TableName= Название таблицы FieldName1,FieldName2,FieldName3= Поля таблицы TableName ValueField1,ValueField2= Значения вставляемые удаляемые. ValueWhere= Значение условия выборки ПС. В книгах по SQL Все нормально расписано, впринципе мне хватало в свое время и стандартной документации. Главное желание. Новый вирус - "БОМЖ"! Он просто роется в Корзине...и спит под ярлычком "Сетевое окружение" |
#3
|
|||
|
|||
![]() Ок, спасибо что ответил!
Что то подобное я уже встречал, но все встает на том что я не знаю куда этот SQL запрос вставить. Напиши пожалуйста куда запрос вводиться, для меня многое станет понятно! |
#4
|
|||
|
|||
![]() Цитата:
INSERT INTO TableName (FieldName1,FieldName2) Values(:ValueField1,:ValueField2) :valuefields1 Будет являться параметром, т.е. ты во время выполнения программы присвоишь определенный текст допустим из эдита, этому параметры и после того как выполнишь запрос данные добавятся в таблицу. |
#5
|
|||
|
|||
![]() Спасибо вам, есть же люди на форуме!
Кое что для меня проясняется, я не хотел бы здесь тупить и задавать глупых вопросов, я сейчас даже качаю книгу по SQL но пока качается книга и пока пройдет время, до того как я найду что то похожее по моей теме. Я хотел бы задать еще пару вопросов, я думаю что на вас могу положится, т.к. пока получаю для себя ценнейшие ответы. Вот возьмем dbf файл например industry, он я думаю есть у всех в папке C:\Program Files\Common Files\Borland Shared\Data там есть название стоблцов ind_code,int_name,long_name, то есть делаем так - INSERT INTO industry (ind_code,int_name,long_name) Values(ValueField1,ValueField2) получается я изменил в запросе название таблицы и название ячеек, получается этого должно хватить чтобы добавить свои данные в таблицу?! Но что делать дальше при компиляции этого "проекта"? У меня просто запускается таблица и это логично я думаю! Я так понимаю что этот запрос надо связать с кнопкой или как вообще выполнить запрос? Я понимаю что задаю очень глупый вопрос для вас, но все таки не посылайте меня )) и ответьте на него. Практически не сплю, жду ответа от вас )). Будет классно если вы найдете этот файл у себя, можно конечно и на другом dbf файле показать пример, вы потратите несколько минут а мне серьезно поможете! |
#6
|
||||
|
||||
![]() Плохо, что у вас изначально нет литературы, но по идее и справки встроенной Дельфи должно хататать.
Первое: В SQL существуют 2 основных вида запросов: 1. исполняемый - запрос который что-то делает с БД и не возвращает данные это запросы типа (insert, delete, update) 2. запрос на получение данных - (select) Второе: В Дельфи работа с SQL через ADO реализована следующим образом: 1. Организуется подключение к БД (для фомата DBF базой данных считается каталог в котором расположены таблицы) с помощью компонента AdoConnection. 2. С помощью компонентов ADOQuery или ADOCommand выполняются запросы пользователя. 3. С помощью компонента DataSource результаты выполнения запросов можно передать для отображения в компонет DBGrid или любой другой компонент использующий БД. Вот пример для вашей таблицы: Обратите внимание как выглядит строка подключения т.к. для подключение к DBF есть небольшая хитрость. dfm-файл Код:
Код:
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. Последний раз редактировалось Страдалецъ, 24.07.2010 в 13:20. |
#7
|
|||
|
|||
![]() ![]() Конечно было еще хорошо, если бы вы мне ответили все таки на мои вопросы, что бы устранить некоторые пробелы. Заранее Спасибо! Извините за занудство! |
#8
|
|||
|
|||
![]() Цитата:
1) Создаешь проект делфи 2) Кидаешь на форму компоненты ADOConnection1, ADOTable1, DataSource1, AdoQuery1, DBGRID1, Button1, и 3 эдита для ввода данных. 3)Связываешься с БД, в компоненте ADoTable1 указываешь название таблицы. 4) В Датасурсе указываешь таблицу 5) На форме после того как разместил DBGrid указываешь DataSource таблицы, она отобразится в гриде. 6)Выделяешь компонент ADOQuery, находишь свойство SQL, нажимаешь и вводить туда это запрос-(для таблицы Industry пример) : INSERT INTO industry (ind_code,int_name,long_name) Values(:ind_code,:int_name,:Long_name) 7)Нажимаешь ок, потом в этом же компоненте заходишь в Parameters там появятся параметры int_code,int_name,:long_name. 8)Далее щелкаешь двойным щелчком на компонент кнопки, и туда пишешь код: Код:
Запускаешь вводишь в эдиты данные и жмешь на кнопку. |
#9
|
|||
|
|||
![]() Спасибо windaws, на 7 пункте все встало колом не могу разобраться.
после того как я щелкнул на кнопу Parametrs, там появились int_code,int_name,:long_name, ну да там они есть, ну а дальше то что??? Потом я нажал на конку два раза, ввел код, потом запустил проект и у меня сразу вылезли ошибки [Error] Unit1.pas(36): Undeclared identifier: 'asInteger' [Error] Unit1.pas(37): Undeclared identifier: 'asSring' [Error] Unit1.pas(38): Undeclared identifier: 'asString' [Error] Unit1.pas(39): Undeclared identifier: 'execute' [Error] Unit1.pas(40): Undeclared identifier: 'Table1' [Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas' Слушай вышли мне проект b.grigorev@mail.ru, так будет проще мне разобраться, а если что я напишу. |
#10
|
|||
|
|||
![]() ошибся...
Код:
|
#11
|
|||
|
|||
![]() С эти кодом пошло вроде бы.
Запускаю все нормально, ошибок нет, НО когда я меняю в компоненте ADOQuery active:=false на active:=true, показывается ошибка: Неправильно определен объект Parameter. Предоставлены несовместимые или неполные сведения. |
#12
|
|||||
|
|||||
![]() Цитата:
Код:
Код:
|
#13
|
|||
|
|||
![]() ок, поменял, при компиляции выдает ошибку, глянь пожалуйста.
|
#14
|
|||||
|
|||||
![]() Цитата:
В коде исправь: Код:
в запросе: Код:
|
#15
|
|||
|
|||
![]() Спасибо что не оставляешь меня с моими начинаниями. Прошлую ошибку в принципе я мог распознать, признаю что сначала надо самому попробовать разобраться. НО новая ошибка, я не могу разобрать, что то вроде связано с функцией ввода.
|