Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Работа с Edit'ами ВСВ для наполнения БД SQLServer 
:(
    Опции темы
F3d0
Дата 12.6.2008, 13:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 6.6.2008

Репутация: нет
Всего: нет



Подскажите, как мне из кучи Едиток забить введенную в них информацию в базу данных?
Подскажите правильную конструкцию INSERT'а.
Да, основная проблема состоит в том, что данные из Едиток разносятся по разным таблицам, соответственно через айдишники должна проверяться правильность.
Подскажите, очень нужно.
PM MAIL   Вверх
fish9370
Дата 12.6.2008, 14:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 663
Регистрация: 15.4.2007
Где: Москва

Репутация: нет
Всего: 1



для начала ты должен ответить на несколько вопросов:

1. с какой СУБД (система управления базами данных) ты хочешь работать? (mysql, postgresql, mssql, файлы foxpro (*.bdf), файлы access (*.mdb) или другой)
2. каким образом ты хочешь туда коннектиться? (ADO, BDE + ODBC, прямой доступ через библиотеку предоставляемую СУБД (например libpqxx))

здесь можно скачать официальную документацию по mysql на русском - http://downloads.mysql.com/docs/refman-4.0-ru.html.zip
там все написано и про INSERT и про SQL в целом..

Это сообщение отредактировал(а) fish9370 - 12.6.2008, 14:42


--------------------
undefined
PM MAIL WWW ICQ   Вверх
F3d0
Дата 12.6.2008, 15:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 6.6.2008

Репутация: нет
Всего: нет



БД SQL Server 2000
Конектиться предполагаю через ADO.
То есть в чем суть проблемы...
Например я выстаскиваю данные в DBGrid через Query обычным SQL запросом. Данные берутся из порядка десяти таблиц. Данные берутся из крайних таблиц.
Затем мне нужно при вводе информации в Едитки разнести их в поля таблиц, но при этом связные таблицы, где указаны айдишники не должны забиваться NULLами, а должны забиваться соответствующими айдишниками.
PM MAIL   Вверх
Progis
Дата 16.7.2008, 01:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 15.7.2008

Репутация: нет
Всего: нет



Если я правильно понял проблему при занесении новых данных в базу, у тебя  тебя должен генерироваться новый айдишник.. Тебе нужно сделать генератор (создать таблицу где будет хранится последний по счету айдишник, с помошью хранимых процедур отслеживать и прибовлять к нему единицу, кстати забыл сказать что это число (ID) надо определить как параметр )  

Код

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go

ALTER PROCEDURE [dbo].[GEN_ID] @gen_title varchar(30), @шаг int = 0, @айди int OUTPUT AS    
               begin tran             
      select @айди = LAST_VALUE + @шаг from [таблица с последним айди] where GEN_TITLE = @gen_title       
            if @id is null begin raiserror('Не обнаружен генератор', 16, 11) rollback return end      
             update GENERATOR set LAST_VALUE = @id where GEN_TITLE = @gen_title
 commit 

 ну и само сабой функция в которой присваиваешь значение шагу..
P.S."Может какуюто мелочевку и забыл указать (писал по памяти), но главное понять смысл "



Это сообщение отредактировал(а) Rodman - 16.7.2008, 09:05
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C++: Базы данных"
chipset

Данный форум предназначен для обсуждения вопросов прямым образом связанных с C++ и БД. Так, вопросы только по C++ следует задавать в C++:Общие вопросы а вопросы по абстрактным БД в Базах данных или в соответствующих под-форумах.

Благодарим за понимание.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, chipset.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Базы данных | Следующая тема »


 




[ Время генерации скрипта: 0.1074 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.