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

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

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

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

コマンドプロンプト

コマンドプロンプト(cmd.exe)はMicrosoftによって提供されているコマンドラインインタプリタです。OS/2・Windows CE・Windows NTで使用可能です。

Q&A

解決済

1回答

295閲覧

SQLでDBをコマンドラインで作る

Shikitaka

総合スコア4

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

コマンドプロンプト

コマンドプロンプト(cmd.exe)はMicrosoftによって提供されているコマンドラインインタプリタです。OS/2・Windows CE・Windows NTで使用可能です。

0グッド

0クリップ

投稿2018/07/19 06:54

前提・実現したいこと

SQLの勉強のために、DBを用いたカウンターを開発しています。
現在はその最初のDB作成を行っています。
http://php.dori-mu.net/db-counter.html
↑このサイトを参考にしています

発生している問題・エラーメッセージ

ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'counter'

該当のソースコード

sql

1MariaDB [(none)]> create database counter; 2ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'counter'

試したこと

ウェブで同じ症状を調べた結果ユーザでのログインが必要かもしれないと考えました。
mysql -u ユーザー名 -p
このコマンドを打ち込んでみましたが、こちらもやはり同じエラーコードで拒否されてしまいました。

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

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

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

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

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

m.ts10806

2018/07/19 06:56

ユーザーはルート権限を持っているユーザーでログインされたのでしょうか。
Shikitaka

2018/07/19 07:01

ユーザーのログインは自分がmysqlを使用して作ったアカウントで行いました。そのアカウントが権限を持っているかはわかりません。アカウントづくりに目いっぱいで気にしていませんでした。
unz.hori

2018/07/19 07:21

スキーマ作成、テーブル作成などをSQLで行う際には権限が必要です。権限も色々あるのでネットで調べてみた方がいいですね。
Shikitaka

2018/07/19 07:29

@unz.horiさん ありがとうございます。調べてみます。
Shikitaka

2018/07/19 07:32

@mts10806さん ”SELECT user, host FROM user;” このコマンドを入力したところ”ERROR 1046 (3D000): No database selected”と表示されました。これはログイン時に何でもいいからDBとuserを指定しないといけないということでしょうか
unz.hori

2018/07/19 07:38

SELECT user,host FROM mysql.user;でどうですか?
unz.hori

2018/07/19 07:39

"mysql ユーザ 権限 一覧"でググると色々情報がありますので参考にしてみてください
m.ts10806

2018/07/19 07:39

「権限を表示」を確認してください。
Shikitaka

2018/07/19 07:44

権限の表示、通りました。どこを見ればいいですか。
m.ts10806

2018/07/19 07:46

えーと。そこにユーザの権限を確認するコマンドがあるんですが。。  hoge となっていますが、そこは確認したいユーザ名に置き換えてください。
Shikitaka

2018/07/19 07:47

やってみます。
Shikitaka

2018/07/19 07:54

エラーメッセージ ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'が出てしまいます
unz.hori

2018/07/19 07:55

実行したSQLは?
unz.hori

2018/07/19 08:07

$ mysql -u rootのようにrootでログインしてますか?
Shikitaka

2018/07/19 08:08

unz.horiさん mts10806さん ありがとうございました。無事解決しました。DBが作れなかった原因はログインをしていなかったから。ログインできなかった理由は作成したユーザの大文字と小文字の区別でした。ログインしたところ作成できたので、権限は持っていると思います。お時間とっていただきありがとうございました。
Shikitaka

2018/07/19 08:09

mysql -u taka -D counter -p というコードでログインしました。
unz.hori

2018/07/19 08:09

解決して良かったです。ご自分で回答して質問をクローズしてください。
m.ts10806

2018/07/19 08:14

プログラムは指示した通りにしか動きませんからね。基本的には大文字小文字は大別されるものと思ってください。似ているからと同じものと解釈してはくれません。
guest

回答1

0

自己解決

解決しました。 詳細は、質問への追記詳細をご覧ください

投稿2018/07/19 08:15

Shikitaka

総合スコア4

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問