|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
добавления записи в таблицу dbf
Помогите написать запрос для добавления записи в таблицу dbf.
Есть таблицы bdf, нужно вносить в них изменения. Таблицы я научился подключать через ADO и BDE, а вот добавить запись я так и не могу. Я понимаю что надо SQL запросы писать, но не знаю как пишется запрос и куда его надо вводить. Пожалуйста не пишите что надо мне почитать книги, это мне не поможет, у меня появится больше вопросов чем ответов, я уже пробовал там все расплывчато написано а мне надо конкретно по моему примеру! Покажите мне конкретный рабочий пример, буду очень признателен! |
#2
|
|||
|
|||
Цитата:
Код:
INSERT INTO TableName (FieldName1,FieldName2) Values(ValueField1,ValueField2) На изменение: Код:
Update TableName Set FieldName1=ValueField1, FieldName2=ValueField2 Where FieldName3= ValueWhere где: 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-файл Код:
object Form1: TForm1 Left = 307 Top = 114 Width = 435 Height = 300 Caption = 'Form1' Color = clBtnFace Font.Charset = DEFAULT_CHARSET Font.Color = clWindowText Font.Height = -11 Font.Name = 'MS Sans Serif' Font.Style = [] OldCreateOrder = False PixelsPerInch = 96 TextHeight = 13 object DBGrid1: TDBGrid Left = 8 Top = 48 Width = 320 Height = 185 DataSource = DataSource1 TabOrder = 0 TitleFont.Charset = DEFAULT_CHARSET TitleFont.Color = clWindowText TitleFont.Height = -11 TitleFont.Name = 'MS Sans Serif' TitleFont.Style = [] end object ADOConnection1: TADOConnection Connected = True ConnectionString = 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Co' + 'mmon Files\Borland Shared\Data\;Extended Properties=DBASE IV;Per' + 'sist Security Info=False' LoginPrompt = False Mode = cmShareDenyNone Provider = 'Microsoft.Jet.OLEDB.4.0' Left = 24 Top = 16 end object ADOQuery1: TADOQuery Active = True Connection = ADOConnection1 CursorType = ctStatic Parameters = <> SQL.Strings = ( 'select * from industry.dbf') Left = 64 Top = 16 end object DataSource1: TDataSource DataSet = ADOQuery1 Left = 104 Top = 16 end end Код:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, DB, Grids, DBGrids, ADODB; type TForm1 = class(TForm) ADOConnection1: TADOConnection; ADOQuery1: TADOQuery; DBGrid1: TDBGrid; DataSource1: TDataSource; private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} end. Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. Последний раз редактировалось Страдалецъ, 24.07.2010 в 13:20. |
#7
|
|||
|
|||
Спасибо что не оставляешь меня с моими начинаниями. Прошлую ошибку в принципе я мог распознать, признаю что сначала надо самому попробовать разобраться. НО новая ошибка, я не могу разобрать, что то вроде связано с функцией ввода.
|
#8
|
|||
|
|||
Цитата:
|
#9
|
|||
|
|||
пипец я чувствую себя таким тупым...
я убрал слэши после того как запустил проект - ввел в первый цифры, во второй и третий буквы но все равно таже самая ошибка |