質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

Q&A

解決済

3回答

204閲覧

Postgresqlでboard(データ)がINSERTできません。

退会済みユーザー

退会済みユーザー

総合スコア0

PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

0グッド

0クリップ

投稿2018/07/30 00:46

https://github.com/blobmon/communicate
環境はLinuxでPostgreSQLです。
上のboardを追加するのができません。

INSERT INTO boards (board, display_name) VALUES ('board1', 'Board 1'); と入力したら communicate_db=# INSERT INTO boards (board, display_name) VALUES ('board1', 'Board 1'); ERROR: relation "boards" does not exist LINE 1: INSERT INTO boards (board, display_name) VALUES ('board1', '...

と表示されます。どうやったら、できるようになりますか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/07/30 00:56

1ヶ月前と比べて環境が変わっているはずですね、テーブルを削除していたりしませんか? boardsテーブルの存在を確認しましょう。psqlコマンドでデータベースに接続しているときに、「\d boards;」と入力すれば、テーブルが存在すればテーブルの構造が表示されますし、なければないなりにエラーメッセージが表示されるはずです。
退会済みユーザー

退会済みユーザー

2018/07/30 01:59 編集

communicate_db=# \d boards; Did not find any relation named "boards". と表示されました。
Orlofsky

2018/07/30 03:52

タイトルの [board(データ)]→[テーブル]に変更しませんか?質問の内容を想像しやすいタイトルを付けられる、わかり易い文章を書ける能力はこの職業では必須です。
退会済みユーザー

退会済みユーザー

2018/07/30 04:48

はい!わかりました!!
guest

回答3

0

boardsテーブルが存在しているのは確認できていますか?
存在しているなら、そのテーブルの属するスキーマがpublicで無いなら、そのスキーマと同名のユーザーでログインしてinsertする必要があります。

若しくは、以下のようにスキーマ修飾するか

SQL

1INSERT INTO スキーマ名.boards (board, display_name) VALUES ('board1', 'Board 1');

投稿2018/07/30 03:10

sazi

総合スコア25138

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/07/30 04:50

スキーマ名を調べたら communicate_db=# SHOW search_path; search_path ----------------- "$user", public と表示されました。スキーマ名をuserからcommunicate_roleに変更したほうがいいですか?もしそうなら ALTER SCHEMA name RENAME TO newname; でいいですか?
sazi

2018/07/30 07:11

どのようなスキーマで構成されているかは、その掲示板の仕様ですので分かりません。
sazi

2018/07/30 09:09 編集

あなたのレベルなら、CUIで行うよりもDBツールでグラフィカルに見えたほうが理解しやすいと思うんですけど、一向にアドバイスを聞く耳持ちませんよね。
退会済みユーザー

退会済みユーザー

2018/07/30 07:24

いや一回pgAdminをインストールしたんですけど、よく使い方がわからなかくてやめたんです。
sazi

2018/07/30 07:31

では、コマンドレベルのものでも内容を理解するしか無いですね。 search_pathに表示されているのはシステムがテーブルなどを検索する時にたどる順序です。 「"$user", public」というのは、「ログインユーザー名と同じスキーマ」→「publicスキーマ」という意味です。 boardsテーブルがどのスキーマに属しているかの情報ではありません。
退会済みユーザー

退会済みユーザー

2018/07/30 09:08

はい。わかりました。
guest

0

ベストアンサー

GitHub - blobmon/communicate: A simple discussion board creation software のREADMEを参考に、
psqlコマンドで接続中に、
「\i create_table_query.sql」
を実行すれば、削除してしまったテーブル類が再作成されるのではないかと思います。
(既に作られているテーブル類に関してはエラーが出るでしょうけど。)

投稿2018/07/30 02:08

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/07/30 04:50

すいません、それでもできません。
退会済みユーザー

退会済みユーザー

2018/07/30 05:47

create_table_query.sql ファイルを紐解いて、boardsテーブルを作成する箇所のみ取り出して実行すればよいのではないでしょうか。 本人が努力して工夫して乗り切るしか手がないのではないかと思います。 (あるいはサーバーを初期化して、最初からやり直すなど。)
退会済みユーザー

退会済みユーザー

2018/07/30 09:08

わかりました
guest

0

投稿2018/07/30 01:15

Orlofsky

総合スコア16415

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/07/30 02:01

スキーマ名って何ですか?やってみたら以下のように出ました。 communicate_db=# SHOW search_path; search_path ----------------- "$user", public (1 row) ここからどうしたらいいですか?
Orlofsky

2018/07/30 02:09

CREATE TABLEを実行したPostgreSQLのユーザーです。 基礎的なことがわかってないと仕事になりませんから、 >PostgreSQL入門 でググってひと通り読んでください。
退会済みユーザー

退会済みユーザー

2018/07/30 04:51

わかりました
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問