はじめまして。
perlからMysqlのデータベースやテーブルを作成したいと思っております。
webを検索してみたのですが、どれもデータベースに接続してから、データの操作(挿入や削除など)をするものばかりで、データベースの作成などが見つかりません。
perlからデータベースの作成などは出来ないのでしょうか?また、出来るのでしたら、どのように書けばいいのでしょうか?
以下は、データベースに接続する場合です。
use DBI;
$database="testdata";
$hostname="localhost";
$user = "aaa";
$password = "test";
$dsn="DBI:mysql:database=$database:host=$hostname";
$dbh = DBI->connect($dsn,$user,$password)||die $DBI::error;
宜しくお願いします。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
>>今回、データベースなども動的に作成が必要になり、色々調べていた次第です。
もちろん、データベース利用方法としてはちょっと特別な事は分かっているのですが・・・。動的なテーブル作成は、まあ無いこともないかな?って思うんですけど、動的なデータベース作成って、たぶん必要ないと思いますよ。テスト用と本番用のデータベース切替っていうのは、ありえますが。
でも、必要なシステムが発生したとき、アクセスのウイザードのように、いくつかの質問に答えたら、データーベースやプログラムまで、MySqlを使ってあっという間にシステムを生成してくれるものがあれば、とても嬉しいかも?です。
No.2
- 回答日時:
通常、「データベースの作成」は、開発工程でのお仕事です。
つまりは開発者が1度だけやることですね。(変更あるから実際は違うけど・・)で、「データベースに接続してから、データの操作(挿入や削除など)」は通常運用の作業です。つまりは、一般ユーザの仕事で、日々あるいは随時発生することす。
これを区別していないと混乱しますよ。
で、一般に、Perlからデータベースを操作するというのは、後者の作業です。前者の作業は、No.1の方が書かれたように、『直接MySQLサーバにrootでログインしてデータベース作成』を行います。
ありがとうございました。
私も元々データベースを管理者権限で作成しテーブルも動的には作成しておらず、データの操作のみをperlまたはphpなどで操作していたのですが、今回、データベースなども動的に作成が必要になり、色々調べていた次第です。もちろん、データベース利用方法としてはちょっと特別な事は分かっているのですが・・・。
No.1が書かれていた参考URLなども参考に、テストだけまずやって見たいと思います。
やはり基本的にデータベース作成を動的にしない方がいいかと思いますので、もう一度検討してみたいと思いますが・・・。
色々と教えていただきありがとうございました。
No.1
- 回答日時:
動的にデータベースやテーブルを作成する必要があるのですか?
データベース作成やテーブル作成はMySQLサーバに直接アクセスして行なったほうがいいと思います。
ただしテーブル作成については
CREATE TABLE member (email varchar(40) NOT NULL, name varchar(20) NOT NULL, PRIMARY KEY ( email ))
といったクエリを渡せば動的に作成できると思います。
しかし、データベース作成は、
CREATE DATABASE db_name
だと思いますが、そもそも管理者権限がないとできないと思います。
参考URLにperlからデータベース作成する方法について回答している方がいたのでご紹介しておきますが、直接MySQLサーバにrootでログインしてデータベース作成することをお勧めします。
参考URL:http://www.mysql.gr.jp/mysqlml/mysql/msg/1062
ありがとうございます。
元々、私も直接サーバにrootでログインしデータベースを作成していただのでが、今回、どうしても動的にデータベースとテーブルの作成が必要になり調べていた次第です。
まだテストしていなのですが、一応データベースも作成出来るということで、これからやって見たいと思います。参考URLもとても参考になりました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP 【PHP/MySQL】コード上で生成したクエリを基に集計クエリを作りたい 1 2022/07/28 15:06
- MySQL 参考書に従って入力したつもりでしたが、最後はエラーがでました。 1 2022/09/28 03:45
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- MySQL データベースの複製の仕方(mysql) 2 2023/05/30 18:24
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- MySQL 【投稿情報用データベース posts】は必要ないと思います。 1 2022/06/02 21:25
- MySQL 「utf8mb4_general_ci」はMAMPでは何に当たりますか? 1 2022/06/02 07:45
- MySQL MySQLのテーブル作成でハイフン - は使用できないのでしょうか? 2 2022/10/21 16:50
- MySQL mysqlがインストールされているのかどうか 1 2023/06/05 14:19
- MySQL mysqlがインストールされているのかわかりません 1 2023/06/05 02:26
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
あるDBから別のDBのテーブルをs...
-
MySQLの文字化け
-
phpmyAdminでmySQLのdumpデータ...
-
データベースの複製の仕方(mysql)
-
Mysqlのデータベースのリンク
-
ロータスアプローチでデータ連...
-
MySQLからのデータ取得で日本語...
-
MySQLの設定ミス
-
文字化けしたデータベース名・...
-
SQLServerのselect文でデータ数...
-
mySQLのデータベースにhtmlのコ...
-
データベースファイル(.db)を開...
-
PL/SQLで@ファイル名が反応しま...
-
sql*loader 数値のロード
-
同じSQL文で極端に検索が遅くな...
-
PL/SQLをWindowsのBATファイル...
-
mysqlにおけるホストのパーセン...
-
comment on columnについてわか...
-
1つのファイルにmysqlとPostgre...
-
MySQLへの特殊文字の挿入について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
あるDBから別のDBのテーブルをs...
-
html上でMySQLにアクセス(Java...
-
SQLServerのselect文でデータ数...
-
バッチファイルではパスワード...
-
mySQLのデータベースにhtmlのコ...
-
htmlタグを含んだ文字のデータ...
-
どの程度のデータベースなら、c...
-
データベースの複製の仕方(mysql)
-
Mysqlのデータベースのリンク
-
私の考えていることは ・mySQL ...
-
MySQL4.1以上で、機種依存文字...
-
データベースに配列を格納する
-
ロータスアプローチでデータ連...
-
データベースに画像を入れた場...
-
firebird,SQLトレーナーの使い方
-
sql merge文について
-
MYSQL で検索した結果を印刷したい
-
MySQL データベースをデタッチ
-
MySQLからのデータ取得で日本語...
-
mysqlデータベース内のuserテー...
おすすめ情報