|
|
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
Добрый день, мне нужно сравнить таблицы из разных БД, соответствуют ли она друг другу на количество адресов, домов и улиц. По названиям схемы и таблицы идентичны. какой запрос можно использовать в этом случае в POSTGRESQL? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2014, 13:20:13 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
Христина, Используйте dblink ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2014, 13:44:48 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
ARTURV, Я пробовала сделать так CREATE TABLE my_tbl AS SELECT * FROM dblink('dbname=mybd', 'SELECT * FROM my2_tbl') и мне показывает ошыбку ERROR: a column definition list is required for functions returning "record" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2014, 20:53:25 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
Христина, Как то так select dblink_connect ('dbname=DB21300Full host=localhost user=postgres password=postgres'); select * from dblink ('select * from имя таблицы where условие') ]as имя таблицы(имя поля тип поля,.......); Читайте документацию Прекрасно работает, например, копирую данные из одной БД в другую ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2014, 21:20:55 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
ARTURV,Большое спасибо, сейчас буду пробовать. Я просто новичок в этом, еще ни разу не работала с таблицами из разных БД ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2014, 21:25:06 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
Христина, Исправление select * from dblink ('select список полей from имя таблицы where условие') ]as имя таблицы(имя поля тип поля,.......); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2014, 22:50:05 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
http://www.postgresql.org/docs/current/static/dblink.html http://www.postgresql.org/docs/current/static/contrib-dblink-function.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2014, 23:08:14 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
Незнаю как задать условие, чтобы сделать выборку улиц которые есть в одной таблице а в другой нет. Названия полей, таблиц и схем в БД идентичны. И можно ли использовать команду NOT IN? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2014, 20:53:01 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
Уже разобралась. select dblink_connect ('dbname=mydb host=111.11.11.1 user=me password=111111'); SELECT * FROM dblink('dbname=mydb', 'select cod_street, name_street from street_tbl') AS t1(cod_street_1 INTEGER, name_street_1 VARCHAR) WHERE cod_street_1 not in (select cod_street from street_tbl); Но очень долго думает и выдает такую ошибку ERROR: could not establish connection DETAIL: could not connect to server: Connection timed out Is the server running on host "111.11.11.1" and accepting TCP/IP connections on port 1111? В чем может быть причина ?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2014, 21:25:06 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
Интересует правильно ли я создала запрос??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2014, 21:27:21 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
ХристинаУже разобралась. Код: sql 1. 2. 3. 4. Но очень долго думает и выдает такую ошибку ERROR: could not establish connection DETAIL: could not connect to server: Connection timed out Is the server running on host "111.11.11.1" and accepting TCP/IP connections on port 1111? В чем может быть причина ?? во первых если вы создали [неименованное] соедиение dblink_connect()-ом, то имя бд повторно в dblink() отсылать не нужно. но ошибка у вас еше до этого. похоже 111.11.11.1 вас (т.е. сервер на котором вы выполняете попытку соединения) не слушает. проверьте [с вашего сервера] или psql-ем ткнитесь к 111.11.11.1, или телнетом по 5432 . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2014, 21:55:49 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
ХристинаУже разобралась. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2014, 22:11:23 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
лопата, Спасибо за подсказку. Ошибку с повторением исправила. Телнет на компьютере не работает. Какой запрос для проверки в postgresql надо использовать ??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2014, 22:56:13 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
Христиналопата, Спасибо за подсказку. Ошибку с повторением исправила. Телнет на компьютере не работает. Какой запрос для проверки в postgresql надо использовать ??? 1. нужно убедиться, что 111.11.11.1 слушает вас (тот сервер, на котором вы выполняете запросы) по 5432. это вообще не про dblink и не про запроосы. Даже к PosgreSQL может не иметь отношения (только в части postresql.conf [listen_addresses =] + pg_hba.conf) а например может оказаться вопросом про iptable и прочие фаерволы вопрос: 111.11.11.1 -- это другая какая-то машина, или вы сами к себе по сетевому интерфейсу ломитесь ? (если второе -- то уберите из строки подключения host=111.11.11.1 -- станете ходить иначе (через т.н. local pipe, если конечно сервер -- не винда)) далее -- напрягите сетевого администратора, чтобы та машина, к которой вы хотите обратиться, слушала ту машину, с которой dblink обращается (это не та машина [клиент], где вы пишете запрос, а та машина, где запрос, вызывающий dblink, исполняете) по тому сетевому интерфейсу, по которому обращаететсь (host=....). Вот пусть он с телнетом и прочими бубнами походит вокруг. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2014, 09:32:20 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
лопата, Я подключаюсь из дома к удаленному рабочему столу компании А, конектиться стараюсь с БД компании Б в другую БД компании Б. Мне нужно обратиться к администратору компании Б? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2014, 23:41:42 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
Христина, вам нужно чтобы сервер компании Б[с БД компании Б], видел "другую БД компании Б" (а "другая БД компании Б" слушала (т.е. разрешала соединрение) с 1-м сервером компании Б. Если сервер один и тот же, но на нем или 2 базы в одном инстансе, или 2 интсанса по разным портам - то вам надо изменить строку подключения (убрать из неё хост и, возможно, добавить порт). Если же там ,на втором сервере, 2 сетевых интерфейса, то возможно вам надо просто обратиться к нему (с первого сервера) по другому ip. а уж к кому вы обратитесь -- ваше дело. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2014, 08:02:26 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
Скажите пожалуйста как с помощью dblink делать INSERT из одной таблицы БД1 в другую с БД2 ??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2014, 13:36:42 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
Христина, удобнее -- со стороны вставки Код: sql 1. 2. 3. 4. 5. 6. 7. хотя можно и наоборот, но там каждую строку данных придется в тексты обращать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2014, 14:04:40 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
лопата, Спасибо!! Сделала запрос по вашим указаниям, но мне выбивает ошибку ERROR: type "serial" does not exist LINE 73: id_n FROM a_tbl ') AS T (id_a1 SERIAL, nick_a ... Но там есть поле с типом serial, в чем может быть причина ??? И не нужно делать в этом запросе dblink_connect ?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2014, 15:42:53 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
Христиналопата, Спасибо!! Сделала запрос по вашим указаниям, но мне выбивает ошибку ERROR: type "serial" does not exist LINE 73: id_n FROM a_tbl ') AS T (id_a1 SERIAL, nick_a ... Но там есть поле с типом serial, в чем может быть причина ??? И не нужно делать в этом запросе dblink_connect ?? нет такого типа serial в postgresql serial это синтаксическая обертка на integer+create sequence+default nextval(...) PS: вы пытаетесь использовать базу не зная основ и даже не прочитав (не такую уж длинную) документацию. --Maxim Boguk www.postgresql-consulting.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2014, 15:50:15 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
присоединяюсь к Maxim Boguk<> serial это синтаксическая обертка на integer+create sequence+default nextval(...) <> + OWNED BY [for drop cascade when column dropped] не только ртфм ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2014, 16:10:54 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
Спасибо, SELECT работает. Но когда выполняю команду INSERT то выбивает ошибку ERROR: INSERT has more target columns than expressions. Хотя количество полей совпадает, проверяла несколько раз. Может быть проблема в чем-то другом ??? PS Простите, если вам мои вопросы кажутся глупыми, документацию обязательно почитаю еще раз. Я пока только учусь и прошу помощи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2014, 21:30:14 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
Христина, приведите код ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2014, 21:32:12 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
лопата, INSERT INTO a_tbl (id_a,....id_keep_filter) select dblink_connect ('dbname=db1 host=111.11.11.1 user=user password=111'); SELECT * FROM dblink('SELECT id_a,.....1,null,null FROM a_tbl') AS T(id_a,nick_a1 VARCHAR,num_a1 VARCHAR .....id_keep__filter INTEGER) WHERE num_a1 like '20146'; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2014, 22:09:47 |
|
||
|
робота с таблицами из разних бд
|
|||
|---|---|---|---|
|
#18+
ХристинаМожет быть проблема в чем-то другом ??? Проблема классическая. Находится по другую сторону монитора. Вы написали какую-то хрень вместо реального текста запроса. Это действительно проблема: делать то, что Вас не просят. А мелкие глупые вопросы не читавших документацию - здесь к ним привыкли, отвечают вполне спокойно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2014, 22:16:09 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=38814083&tid=1998329]: |
0ms |
get settings: |
6ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
36ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 219ms |
| total: | 330ms |

| 0 / 0 |
