экспорт из базы с расширением *.GDB в DBF

Работа VB и СУБД (Access, MSSQL, MySQL, Oracle и пр.)
Правила форума
При создании новой темы не забывайте указывать используемую СУБД.
gjghjc
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 659
Зарегистрирован: 13.10.2002 (Вс) 8:28
Откуда: БАЛАКЛАВА!!

экспорт из базы с расширением *.GDB в DBF

Сообщение gjghjc » 29.03.2007 (Чт) 9:17

Всем здравствуйте.
Есть такой вопрос.
На моей машине установлен сервер БД FireBird 1.5.3, софтинка IBExpert (используется просто как конструктор запросов) и некая база с расширением *GDB.
Теперь вопрос КАК силами только лишь SQL запросов вытащить данные из нескольких таблиц моей базы и запихать их в DBF таблицу.
Понимаю что это можно сделать из IBExpert но суть в том что та база к которой я имею доступ лишь копия реальной. А реальная лежит на сервере и доступ к ней осуществляется при помощи некой клиентской программы в которой есть конструктор запросов. Т.е. путь такой я создаю запрос в IBExpert, испытываю его на копии базы а потом пихаю в прогу для работы с реальной.
Извините если вопрос глупый но мне он жизненно необходим :)
Заранее спасибо ВСЕМ ответившим ПО СУЩЕСВТУ вопроса
Утро добрым не бывает!

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 29.03.2007 (Чт) 12:27

Средствами ADO создать linked table к серверу, после чего перелить запросом SELECT INTO. Поиск по словам linked table сразу выведет на описание того, как это делается.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

gjghjc
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 659
Зарегистрирован: 13.10.2002 (Вс) 8:28
Откуда: БАЛАКЛАВА!!

Сообщение gjghjc » 29.03.2007 (Чт) 16:16

Все дело в том, что к серверу сторонней прогой меня не пустят.
У меня есть доступ только к программе о которой я писал. А в ней соответсвенно есть конструктор запросов.
И что самое немаловажное это мой первый опыт общения с серверными БД. :(
Утро добрым не бывает!

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 29.03.2007 (Чт) 16:52

Значит надо обратиться к инструкции по языковым конструкциям SQL, используемым firebird, и посмотреть, поддерживается ли там предложение IN в инструкции SELECT INTO. В Access, например, через IN можно указать внешнюю базу, куда делается выборка.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

gjghjc
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 659
Зарегистрирован: 13.10.2002 (Вс) 8:28
Откуда: БАЛАКЛАВА!!

Сообщение gjghjc » 30.03.2007 (Пт) 15:24

А можно поподробней??? :(
Утро добрым не бывает!

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 30.03.2007 (Пт) 15:34

А подробнее сюда.
Lasciate ogni speranza, voi ch'entrate.

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 02.04.2007 (Пн) 8:21

GSerg писал(а):Средствами ADO создать linked table к серверу, после чего перелить запросом SELECT INTO. Поиск по словам linked table сразу выведет на описание того, как это делается.


Да уж ладно. Можно проще - создаем два Linked server-a в SQL Server Management Studio... :lol:
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

gjghjc
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 659
Зарегистрирован: 13.10.2002 (Вс) 8:28
Откуда: БАЛАКЛАВА!!

Сообщение gjghjc » 02.04.2007 (Пн) 8:42

Спасибо тебе Большой Человек, закладку на странчку в своей опере сделал, почитаю на досуге :)
У меня тут другие грабли нарисовались
при попытке добавить в DBF таблицу данные (тип поля Numeric) у меня почему-то происходит округление....
например пихаю 50,36 а в таблицу попадает 50,3
если 100,11 то просто 1000
Код стандартный
OpenDatabase......
SQL String= "SELECT * FROM MY_TABLE"
Recordset = .....
.AddNew
.Fields(SUMM) = txtSUMM.TExt
.Update
при этом в txtSUMM содержится например 2,36
а в Fields(SUMM) заносится 2,3. Запятые на точки менял.. вообще вылетает. Я идиот! Убейте меня, кто-нибудь!
Поле SUMM = Numeric (4.2) :(
Утро добрым не бывает!

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

Сообщение VVitafresh » 02.04.2007 (Пн) 11:17

Не должно по идее округлять. Если поле числовое, то и значение ему присваивай числовое, а не тектовое (txtSUMM.TExt).

Попробуй еще изменить размерность поля на Numeric (17,2)
Никакую проблему невозможно решить на том же уровне, на каком она возникла. Нужно стать выше этой проблемы, поднявшись на следующий уровень.

gjghjc
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 659
Зарегистрирован: 13.10.2002 (Вс) 8:28
Откуда: БАЛАКЛАВА!!

Сообщение gjghjc » 02.04.2007 (Пн) 12:01

ошибочка вышла... :)
там в коде стоит CCur(txtSUMM.Text) т.е. перед тем как вносит данные в таблицу я их конвертирую в соотв.формат. а вот насчет размерности поля попробую изменить.
Утро добрым не бывает!


Вернуться в Базы данных

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 253

    TopList