mpro-gram の回答履歴
- PHP/MySQL INSERT文について。
PHP/MySQL INSERT文について。 こんばんは。 PHP・MySQLでデータベースへデータの書き込みを試行錯誤しております。 そこで一つどうしても解決出来ない問題(謎)があるので質問させて頂きます。 簡易的な質問内容としては 全てのカラムに対する値の挿入は可能なのに カラムを指定して値を挿入しようとしたらエラーが出ます。 データベースの設定はテーブル名【TESTtable】 フィールド 種別 NULL 属性/その他 AAA int(6) No UNSIGNED ZEROFILL / auto_increment BBB int(4) Yes CCC int(4) Yes DDD int(4) Yes PHPでのSQL実行文をしてはの記述としては(値は全て可変で数値を代入します。) INSERT INTO TESTtable VALUES (last_insert_id(),50,600,50) とした場合は問題無くテーブルに書き込みされますが カラムを指定して INSERT INTO TESTtable (AAA,BBB,CCC,DDD) VALUES (last_insert_id(),50,600,50) とした場合、書き込みが行われません。 INSERT INTO TESTtable ('AAA','BBB','CCC','DDD') VALUES (last_insert_id(),50,600,50) INSERT INTO TESTtable (AAA,'BBB','CCC','DDD') VALUES (last_insert_id(),50,600,50) INSERT INTO TESTtable ('AAA','BBB','CCC','DDD') VALUES (last_insert_id(),'50','600','50') 等、色々試してみましたが不可能でした。 カラムAAAはauto_incrementにりますので毎回書き込みされますが BBB、CCC、DDDは書き込みが不要の場合もあるので カラム指定の書き込みは必須となるのですが・・・行き詰ってしまいました・・・。 ご教授頂ければ幸いです。 どうぞ、宜しくお願い致します。
- ベストアンサー
- MySQL
- buzinesswa
- 回答数3
- autoincrementで生成された値を別のフィールドの値中にも入れ
autoincrementで生成された値を別のフィールドの値中にも入れたいのですが可能なのでしょうか? つまり何か新規商品のデータを入れる際に、商品IDをautoincrementで生成するとともに、その商品名のフィールドに「商品ナンバー:"autoincrement値"」と入るようにしたいのです。 直近のINSERTの際にautoincrement生成した値を次の(別の)SQL文で利用するというのはmysql_insertidなどで可能なのは存じているのですが・・・。
- Windows7でphpMyAdminを使えるようにしたいのですが・・
Windows7でphpMyAdminを使えるようにしたいのですが・・・ 【環境】 OS:Windows7 Home Edition Apache2.2.15 php-5.3.2 mysql-5.1.41 phpMyAdmin-3.3.3 ApacheとPHPの繋ぎこみは問題なく行えております(php.info表示OK) MySQLのインストールまでは終了しております(コマンドプロンプトのmysql -u root -pでログイン出来ます) php.iniでのmysql関連箇所のコメントアウトは外してありますのでそのあたりの設定は出来ているのではないかと・・・(画像参照) PHPからのデータベースへのアクセスは出来ているようです。 ※mysql_connect()で接続できました。 ※まだデータベースやユーザーは作成してない状態です ということで、phpMyAdminを設定して、取りあえずそのパスへアクセスしてみたところ phpMyAdmin - エラー mysql 拡張をロードできません。PHP の設定を確認してください が表示されました。 一応、あちこちのサイトの設定HowToも参考にしていろいろ設定をしなおしてみたりしたのですが、上記エラーが直りません。 ちなみに「extension=php_mysql.dll」のコメントアウトは外してあります。 あと「C:\PHP」内に「libmySQL.dll」がなかったので、インストールしたMySQLのファイルからコピーして入れておきました。 これ以外に設定が必要なのか、あちこち探してみたりも引き続き行っているのですが、なかなか解決できません。 対策方法など、ご存知の方がいらっしゃいましたらご教授いただければ幸いです。
- MySQL server 5.1のInstance config wi
MySQL server 5.1のInstance config wizardでエラーになり先にすすめません><最後のProcessing configurationのRestart serviceでthe service could not be startedとでてインストールが完了しません。何回もインストールしてるんだけど教えてください
- Index の使い方、where a.カラム1 LIKE CONCAT
Index の使い方、where a.カラム1 LIKE CONCAT(b.カラム2,'%') お世話になります。 テーブルA: id phone ----------------------------------- 1 819011112222 2 819022223333 3 81312345678 4 651112222 5 8699998888 6 819011112222 テーブルB: id Name Pref --------------------------------------------------- 1 Japan-1 8131234 2 JP-Mobile 8190 3 China-1 869 4 China-2 868 5 Japan-2 813 6 Japan 81 7 Singapore 65 このようなテーブルで、テーブルBはレコード数が数千件あります。 数千件でしたし、データを取るのに遅いとは思いますが、 なんとか耐えらえた範囲なので下記のように実行しておりました。 select a.*,b.Name,b.Pref FROM テーブルA a, テーブルB b where a.phone LIKE CONCAT(Pref,'%') group by a.id; 結果 id phone Name ---------------------------------------------------- 1 819011112222 JP-Mobile 2 819022223333 JP-Mobile 3 81312345678 Japan-2 4 651112222 Singapore 5 8699998888 China-1 5 862223333 China-2 6 819011112222 JP-Mobile テーブルB Prefに対してIndexを作成していますが、どうも作動していないようです。 Indexに関してよく理解できていなかったので、気にしていなかったのですが、今回早さを比べる為に Indexあり、なしで試しみても大して変っていませんでした。 今のところ、Indexを使えていなくても問題ないのですが、今後テーブルBのデータが数万件に増えてしまい、今までのやり方が通用しません。 効果的に使用する方法をアドバイス頂けませんでしょうか。 よろしくお願いします。
- 締切済み
- MySQL
- fukafuka19
- 回答数1
- phpmyadminでデータベースを見た場合各テーブルの種類はInno
phpmyadminでデータベースを見た場合各テーブルの種類はInnoDBなのに合計のところの種類がMyISAMになっています。コマンドプロンプトからコマンドを打って合計の種類をInnoDBに変更するにはどのようにコマンドを打てばいいのでしょうか。
- CGIフォームに書いてある @ が消える対策を教えてください。
CGIフォームに書いてある @ が消える対策を教えてください。 perl、シフトJISのメールフォームCGIをダウンロードして利用しています。 このCGIの設定画面で登録したメールアドレス署名部分の info@example.comの @ 部分の記号が消えちゃいます。 (タグとか使いません。テキストで登録すれば改行も自動反映します。) 送信画面からメールを送った場合は全く文字化けしません。 @にするのが良いのでしょうか? 多くの環境で文字化けさせたくないのですが。 以下の文字化けテストもしてみました。 ------------------------------------ @@―ソ噂十申貼能表暴予禄@@ @@\―\ソ\噂\十\申\貼\能\表\暴\予\禄\@\@\ @@―\ソ\噂\十\申\貼\能\表\暴\予\禄\@@ メール info@example.com メール info@\example.com メール info@example.com ------------------------------- 結果は、以下のようになりました。 ------------------------------- @@<縁嵩舶沫蓮@ @@―ソ噂十申貼能表暴予禄@@ @@―ソ噂十申貼能表暴予禄@@ メール info.com メール info@ xample.com メール info@example.com ------------------------------- 数時間ほど調べたのですが解決できませんでした・・・ 詳しい方ご回答をお願いします。<(_ _)>
- ベストアンサー
- CGI
- takumana20
- 回答数2
- MYSQLのログにつきまして
MYSQLのログにつきまして mysqlでPostgresqlのpg_logのようにsqlの実行時エラーなどを出力する方法はありますか? --logオプションで起動しても実行されたクエリーがログに出力されるのみで肝心な実行結果ログが出力されず困っています。 phpmyadmiinで誤ったsqlを実行した時に出るエラーのような出力を出せないかと思っています。 以上、宜しくおねがいします。
- MYSQLのログにつきまして
MYSQLのログにつきまして mysqlでPostgresqlのpg_logのようにsqlの実行時エラーなどを出力する方法はありますか? --logオプションで起動しても実行されたクエリーがログに出力されるのみで肝心な実行結果ログが出力されず困っています。 phpmyadmiinで誤ったsqlを実行した時に出るエラーのような出力を出せないかと思っています。 以上、宜しくおねがいします。