Помогите новичку с запросами к базам

Тема в разделе "Borland C++ Builder & Kylix", создана пользователем Parasit, 21 янв 2007.

  1. Parasit

    Parasit Гость

    Проблема состоит из того что я не знаю как правильно писать запросы к базе

    Вот процес такой (обьясняю как умею :) простите зеранее)

    1. создал базу через датабайз мэнаджер Парадокс 7 в СиБуилдере
    2. Теперь допустим надо внести запись из "Едит1" в какойнибудь опр-й столбец созд-й таблицы
    Вот покажите самому глупому как пожалуйста!

    Я делал так (не смейтесь :D если чё не так)

    Query1->SQL->Text = "INSERT INTO tablename (name) VALUES ('чтото')";

    не робит и еще я так понимаю вдруг заработает (маловерояно правда)
    он запишет в таблицу tablename и столбец name значение VALUES ('чтото')";
    а мне нужно чтоб он именно значение взял из "едит1" и вставил

    Всем заранее огромное спасибо!
     
  2. LAW

    LAW Гость

    У Вас обязательная цель использовать SQL?
    Ведь можно воспользоваться навигационной системой доступа к БД.
    Что-то типа:

    Код (Text):
    Query1->Edit();
    Query1->FieldByName("name")->AsString="что-то";
    Query1->Post();
    Удачи!
     
  3. Barmutik

    Barmutik Гость

    А какая конкретно ошибка?

    Ну если из Эдита то что-то аля так:

    Код (Text):
    Query1->SQL->Text = 'INSERT INTO tablename (name) VALUES (' + #39 + Edit1.Text + #39 + ')';
     
  4. useshorttime

    useshorttime Гость

    сделал уже две БД в Builder6, ни разу не пользовался sql (не знаю к добру это или нет)
    Мой вариант вашей задачи:
    Table1->Open();
    Table1->Edit();
    Table1->FieldByName("Field1")->Value = Edit1->Text;
    Table1->Post();

    У меня вопрос к опытным: есть ли вообще преимущество использования sql-вставок в код программы?
     
  5. LAW

    LAW Гость

    По моему опыту если база хранит данные в dbf, то ситуация с навигационной системой и SQL разная.
    Подчиняется общему правилу: Если обработка происходит с группой записей - быстрее SQL, если с 1 - быстрее навигация.
    Например: GotoKey() стабатывает во много раз быстрее SELECT - WHERE, при условии, что отбирается 1 уникальная запись (RecNo не всчёт). А если необходимо сделать массовый UPDATE - выигрывает SQL.
     
  6. Parasit

    Parasit Гость

    Вот как изменить значение какого либо столбца и определенной строки в таблице
    и еще вопрос как можно удалить "строки" в таблице по условию:

    Например стобец содержит в нескольких строках цифры 102
    вот как удалить все строки содержащие в столбце цифру 102
     
  7. Barmutik

    Barmutik Гость

    Код (Text):
    DELETE FROM YourTableName WHERE YourColumnName = 102
     
  8. Parasit

    Parasit Гость

    А если типа Table1->DELETE () можноли как ?
     
  9. LAW

    LAW Гость

    Однозначно.
    Только нужно сначала фильтр поставить.

     
  10. Parasit

    Parasit Гость

    ильтр это типа выделение необходимого потом делет?
     
  11. LAW

    LAW Гость

    Совершенно верно.
     
Загрузка...
Похожие Темы - Помогите новичку запросами
  1. artem4486
    Ответов:
    0
    Просмотров:
    17
  2. rn3rjd
    Ответов:
    9
    Просмотров:
    1.233
  3. maxiik
    Ответов:
    3
    Просмотров:
    1.584
  4. zaza41rus
    Ответов:
    0
    Просмотров:
    1.054
  5. Radion2
    Ответов:
    0
    Просмотров:
    1.670

Поделиться этой страницей