• 締切済み

データベース改名

MySQL 5.0.x でデータベース db_with_old_name を db_with_new_name という名へ変更しようとした結果です: mysql> RENAME DATABASE db_with_old_name TO db_with_new_name; エラ 1064 (42000): ご使用の SQL 構文中にエラがあります; ご使用の MySQL サーバ バージョンに該当するマニュアルで、1 行目の「DATABASE db_old TO db_new」付近で使用すべき正しい構文を調べてください このデータベースに対し全権を持ったユーザでログインしていますし、「DATABASE」を「SCHEMA」にしたり省略したり、データベース名に括弧をつけたり、いろいろやりましたが、すべて同じエラとなります。 ありえない入力などのアホな間違いは 10 年ほど前には卒業したと信じているのでこんな短い文でそれはないと思うのですが、そもそも MySQL 5.0.x でこの構文は使えないのでしょうか。

みんなの回答

回答No.1

「rename databese」は、MySQL 5.1で実装されています。 MySQL 5.0では、未実装です。 バージョンアップを比較的、短期間で行っているソフトウェアを利用するなら、実装されたバージョンを確認することは、基本動作だと思いますよ?

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • データベース一覧の表示について

    データベース一覧の表示について mysqlshow すると +--------------------+ | Databases | +--------------------+ | information_schema | | mysql | +--------------------+ のようにフォーマットされて表示されるのですが、これを information_schema mysql のようにデータベース名だけを表示させることは できないでしょうか。 スクリプトで不要な部分をカットする、DB アクセスプログラム をくみデータベース名を抽出するなど、方法はいろいろあると 思いますが、手軽な方法を探しています。

    • ベストアンサー
    • MySQL
  • 接続しているデータベース名を得る

    PHP4とMySQLを使用しています。 現在接続しているデータベースの名前を取得することはできますか? <?php mysql_connect('dbhost', 'username', 'password'); mysql_select_db("my_database") ・・・・・・・・・・ ?> としたときに、「my_database」を抜き出したいと思います。 よろしくお願いします。

    • 締切済み
    • PHP
  • MYSQLに新しいデータベースの追加

    こんにちは。PHPを使用し、MYSQLに接続、新しいデータベースを追加したいのですが、CREATE DATABASE データベース名で実行をすると Access denied for user ''@'%' to database 'phptest' というエラーが出てしまい、新規データベースを作成することができません。このエラーのよくわからないのところは、localhostにDBの作成時のエラーは'ユーザー名'@'localhost'という感じで出るのに、それ以外で作成しようとすると''@'%'と意味のわからないエラーになってしまいます。これが作成できない理由だと思うのですが、なにかユーザーの追加時等にやらなくてはいけない必要なことが抜けているのでしょうか?お分かりの方おりましたら、ご教授くださいますようお願いいたします。

  • 複数のデータベースを使う場合

    php4 + MYSQL4.0.2で作業しています。 1つのサーバーにある、複数のデータベースに接続する方法を教えてください。 DB1:テーブルhoge(ID、name) DB2:テーブルhogehoge(ID, hogeID, comment) このような場合、データベースが全てDB1に入っているとすれば、 $con = mysql_connect(host, user, pass); sql="SELECT name, comment" . " FROM hogehoge INNER JOIN hoge ON hogehoge.hogeID = hoge.ID"; $rst = mysql_db_query(DB1, $sql, $con); $col = mysql_fetch_array($rst); print($col['name'] . $col['comment']); となりますが、 テーブルhogeとhogehogeが、異なるデータベースに存在する場合はどのようにすればよいのでしょうか? 以上、よろしくお願いいたします。

    • ベストアンサー
    • MySQL
  • データベース作成について教えてください

    depot>mysql -u root -p Enter password:****** Welcome to the MySQL moniter. Commands end with ; or \g. mysql>create database depot_development; ここでエンターを押すと ERROR 1007 (HY000):Can't create database 'depot_development';database exists このようなエラーが出て困っています・・・ どのような原因が考えられますか? 教えてください!

    • ベストアンサー
    • MySQL
  • SQLインジェクション時の最小値、最大値以外の取得

    ascii(substring((select min(TABLE_NAME) from information_schema.tables where TABLE_SCHEMA != 'mysql' AND TABLE_SCHEMA != 'information_schema'),2,1))>100; ↑MySQLの場合です。 前回ここで疑問に答えていただいて、このようにすることで、tablesというテーブルから、データベースinformation_schemaとmysql以外のデータベースにあるテーブルを取得できるというのはわかったのですが、上のような記述だとmin(TABLE_NAME)にあるとおり、TABLE_NAMEで並べたときの最小のものしか取得できないんです。。。 min(TABLE_NAME)のminをmaxに変えることで最大のものは取得できますが、その2つ以外のテーブル名を取得する記述(例えば2番目を取得するなど)はあるのでしょうか? データベースの種類はMySQLでなくても良いです。 連続の質問になるのですがよろしくお願いします。。。

  • データベースのインポートができません(MySQL)

    ●質問の主旨 下記のサイトを見ながら、データベースのテーブルを インポートしようとしていますが、エラーが出ます。 この場合、phpmyadminのどこを確認すればよいでしょうか? ご存知の方、ご教示願います。 http://www.dbonline.jp/phpmyadmin/export-import/index3.html ●開発環境 windows8 xammp1.8.1 ●エラーの内容(添付画像) エラー 実行した SQL: -- -- データベース: `mydb10` -- CREATE DATABASE `mydb10` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; MySQL のメッセージ: #1007 - Can't create database 'mydb10'; database exists ●インポートの内容(mydb.sql) -- phpMyAdmin SQL Dump -- version 3.5.2.2 -- http://www.phpmyadmin.net -- -- ホスト: 127.0.0.1 -- 生成日時: 2013 年 4 月 20 日 08:27 -- サーバのバージョン: 5.5.27 -- PHP のバージョン: 5.4.7 SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; SET time_zone = "+00:00"; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8 */; -- -- データベース: `mydb10` -- CREATE DATABASE `mydb10` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; USE `mydb10`; -- -------------------------------------------------------- -- -- テーブルの構造 `db10` -- CREATE TABLE IF NOT EXISTS `db10` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` text NOT NULL, `address` text NOT NULL, `tel` text NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ; -- -- テーブルのデータのダンプ `db10` -- INSERT INTO `db10` (`id`, `name`, `address`, `tel`) VALUES (1, 'あああ', 'いいい', '111'), (2, 'ううう', 'えええ', '222'), (3, 'おおお', 'かかか', '333'); /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

    • ベストアンサー
    • MySQL
  • PHPからMySQLのデータベースが作成できない

    PHP:4.4.4 MySQL:4.1.21 です。 PHPからデータベースを作りたいのですがうまくいきません。 以下のように記述しています。 $sql = "CREATE DATABASE ".$DBNAME; $rst = mysql_query($sql,$con); $DBNAMEには作りたいデータベースの名前が入っています。また、$conにはIDが入っており接続はできているようです。しかしこの後で$rstをechoするとTRUEでもFALSEでもなく、何も入っていない状態です。 これはどうすればデータベースをcreateできるのでしょうか? 非推奨のようですがmysql_create_dbを使ってたところ画面が真っ白になってしまいました。

    • 締切済み
    • PHP
  • PDOでのデータベース接続について質問です

    現在、PDOでのmysqlデータベースの操作を学習しています。 以前、mysql_connectでのデータベース接続を学習していた際に、 使用したいデータベースの名前を変数名$dbnameに格納し、 $connect = mysql_connect($server, $user, $password); mysql_select_db($dbname); でデータベースに接続していました。 その要領をふまえて PDOでもデータベースの名前を変数名$dbnameに格納し、 $db = new PDO('mysql:host=localhost;dbname=$dbname',$user,$password); で接続しようと試みたところ、エラーになりました。 そこで、データベース名を変数に格納せず、 $db = new PDO('mysql:host=localhost;dbname=データベース名',$user,$password); で試してみたところ、接続が出来ました。 そこで質問なのですが、PDOでデータベースに接続する場合、 データベース名を変数に格納することは物理的に出来ないのでしょうか? それともうひとつ質問があります。 mysql_connectを使用したときはデータベース接続用のPHPファイルを作成し、 データベース接続が必要なPHPファイルの時にrequire_onceでデータベース接続用のPHPファイルを呼び出ししていましたが、PDOでもデータベース接続用のPHPファイルを呼び出して接続することは可能でしょうか? 絶対に変数に格納したいとか、絶対にデータベース接続を別ファイルにしたいというわけではありませんが、もともとmysql apiで学習していたためmysql apiとPDOの違いが少し気になってしまいました。 ご回答、よろしくお願いします。

    • ベストアンサー
    • PHP
  • データベースへの接続

    以前の質問の、PHP+MySQLの「データを検索して表示する」についての続きなのですが、データを検索すると、 DB Error: not found という画面が出ました。これは構文はあってるけどDBが見つからないって事なんですか? データベースは「速効!図解プログラミングPHP+MySQL」を見ながら、下記のように作りました。 mysql> show fields from member; +------------+---------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +------------+---------------------+------+-----+---------+----------------+ | id | mediumint(9) | NO | PRI | NULL | auto_increment | | last_name | varchar(50) | YES | | NULL | | | first_name | varchar(50) | YES | | NULL | | | age | tinyint(3) unsigned | YES | | NULL | | +------------+---------------------+------+-----+---------+----------------+ 4 rows in set (0.01 sec) MYSQLをインストールした後で、XAMPPをダウンロードしたのですが、それが原因なんでしょうか? 解決策を教えてください。 質問ばかりしていますが、よろしくお願いします。

    • ベストアンサー
    • PHP
インストールができない
このQ&Aのポイント
  • 2022/04/15に購入した自在眼11スタンダードのインストールができません。
  • 20年来お付き合いしているソースネクストさんの製品で初めての問題です。
  • ダウンロード版の購入一覧からもインストールができない状況です。
回答を見る