私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレMySQL 総合 Part20

みんなの評価 :
レスフィルター : (試験中)
すいません質問です。
INSERT文がエラーもなくクエリOKになるんですが
データを見てみるとINSERTされていません。。
特定のテーブルだけこうなるんですが
なにが原因か分かる方いませんでしょうか
INSERT文がエラーもなくクエリOKになるんですが
データを見てみるとINSERTされていません。。
特定のテーブルだけこうなるんですが
なにが原因か分かる方いませんでしょうか
>>902
・DBが壊れた(HDD、メモリの故障)→ ハードをチェックして修理しDB再構築
・メモリ異常でロード中のMySQLが異常動作→ ハード修理、MySQL再起動
・プログラムのミス(SQL文生成ミス)→ デバッグして生成されたSQL文を確認、MySQLのエラーメッセージを確認
・勘違い
・DBが壊れた(HDD、メモリの故障)→ ハードをチェックして修理しDB再構築
・メモリ異常でロード中のMySQLが異常動作→ ハード修理、MySQL再起動
・プログラムのミス(SQL文生成ミス)→ デバッグして生成されたSQL文を確認、MySQLのエラーメッセージを確認
・勘違い
ごちゃごちゃ言っとらんと、そのInsert文とデータをサンプルで良いから晒せっての
それとそのテーブルの定義、strict-modeの設定とか
それとそのテーブルの定義、strict-modeの設定とか
定義です。
CREATE TABLE `t_A` (
`AID` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`B` int(10) unsigned NOT NULL,
`C` tinyint(3) unsigned NOT NULL,
`D` smallint(5) unsigned NOT NULL,
`E` datetime NOT NULL,
`F` tinyint(3) unsigned NOT NULL,
`G` tinyint(3) unsigned DEFAULT '0',
`H` varchar(10) DEFAULT '',
`I` varchar(500) DEFAULT '',
`J` datetime DEFAULT '0000-00-00 00:00:00',
`K` datetime DEFAULT '0000-00-00 00:00:00',
`L` smallint(5) unsigned DEFAULT '0',
PRIMARY KEY (`AID`)
) ENGINE=InnoDB AUTO_INCREMENT=1102 DEFAULT CHARSET=utf8
CREATE TABLE `t_A` (
`AID` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`B` int(10) unsigned NOT NULL,
`C` tinyint(3) unsigned NOT NULL,
`D` smallint(5) unsigned NOT NULL,
`E` datetime NOT NULL,
`F` tinyint(3) unsigned NOT NULL,
`G` tinyint(3) unsigned DEFAULT '0',
`H` varchar(10) DEFAULT '',
`I` varchar(500) DEFAULT '',
`J` datetime DEFAULT '0000-00-00 00:00:00',
`K` datetime DEFAULT '0000-00-00 00:00:00',
`L` smallint(5) unsigned DEFAULT '0',
PRIMARY KEY (`AID`)
) ENGINE=InnoDB AUTO_INCREMENT=1102 DEFAULT CHARSET=utf8
ああ。データベース再インスコしてるんでちょっと時間かかります・・。
>>912
ついてないですです。
今気づいたんですがAUTO_INCREMENT=1102って実データより進んでますね・・
なんでだろー・・
>>912
ついてないですです。
今気づいたんですがAUTO_INCREMENT=1102って実データより進んでますね・・
なんでだろー・・
なんの言語かわからないけど、まずsqlのまえにprintかなにかでinsertしてる変数を出力してみたら
発行されるINSERT文は出力して別で実行してみてもうまくいかないんじゃないの?
INSERT文
insert into aionz.t_打電 (B,C,D,E,F,G,H,I,J,K,L) values(
00000920,
1,
1,
'2011-10-09 17:22:11',
10,
8,
'',
'\r\n',
now(),
now(),
1
)
insert into aionz.t_打電 (B,C,D,E,F,G,H,I,J,K,L) values(
00000920,
1,
1,
'2011-10-09 17:22:11',
10,
8,
'',
'\r\n',
now(),
now(),
1
)
TruncateしてからCSVにしといたデータを1件ずつInsert
ここまでは問題なくInsertできるのに
システムで1回でもInsertするとその後は同じ症状になる。
どっかで変なSQL発行してんのかなぁ・・
SQL発行してるとこ全部見直すかぁ・・
ここまでは問題なくInsertできるのに
システムで1回でもInsertするとその後は同じ症状になる。
どっかで変なSQL発行してんのかなぁ・・
SQL発行してるとこ全部見直すかぁ・・
oh..新発見
truncateしてテーブル空っぽにして
システム動かしたらちゃんとInsertされてる・・
容量・・・?とか・・・?
MySqlって容量はOSとかストレージに依存でしたよね?
ちょっとずつデータ増やして実験してみます
truncateしてテーブル空っぽにして
システム動かしたらちゃんとInsertされてる・・
容量・・・?とか・・・?
MySqlって容量はOSとかストレージに依存でしたよね?
ちょっとずつデータ増やして実験してみます
わかっちゃいました・・・。
あの・・・WorkBench使ってるんですが・・・・その・・・
どうやらWorkBenchってデータ表示が1000件までっぽい・・・
Descで表示したらデータちゃんと入ってますやん・・・・・・・
ごめんなさいごめんなさいごめんなさい米絵七笹示唆さしあああああああああああああああああああああああ
ふざけんなあああああああああああおれの1日を返せええええええええええええええええええええええええええええええ
あの・・・WorkBench使ってるんですが・・・・その・・・
どうやらWorkBenchってデータ表示が1000件までっぽい・・・
Descで表示したらデータちゃんと入ってますやん・・・・・・・
ごめんなさいごめんなさいごめんなさい米絵七笹示唆さしあああああああああああああああああああああああ
ふざけんなあああああああああああおれの1日を返せええええええええええええええええええええええええええええええ
WorkBenchでデータの確認をしているのですが
1000件目以降データが入ってないみたいなんです
って感じで最初に付け加えておくともっと早かっただろうに・・・
1000件目以降データが入ってないみたいなんです
って感じで最初に付け加えておくともっと早かっただろうに・・・
.∩_∩ ミ ギャーッハッハッハッ!
o/⌒(. ;´∀`)つ
と_)__つノ ☆ バンバン
o/⌒(. ;´∀`)つ
と_)__つノ ☆ バンバン
エスパーする前に
「意図した結果になっていないことをどのように確認したか?」
って聞けばいいのね。
勉強になるわー
「意図した結果になっていないことをどのように確認したか?」
って聞けばいいのね。
勉強になるわー
>>925
そこをピンポイントで想像するのがエスパーだろ
そこをピンポイントで想像するのがエスパーだろ
事実正解した人がいるじゃないか→>>923
>>930
そのセリフこそ負け犬の遠吠えに聞こえる
そのセリフこそ負け犬の遠吠えに聞こえる
月曜日から日曜日
0時から24時までを
true falseのbooleanフィールドを用意するとしたら
1つのテーブルの中に
①7 x 24 = 合計168フィールド+リレーションキー
を用意したほうがいいですか?
それとも
②日ごとの24フィールド + 1(曜日) + 1(リレーションキー)の合計26フィールド
③または時間ごとの
1(時間)フィールド+1(曜日)+1(リレーションキー)
の3フィールド
①は一つのテーブルで簡潔できるがフィールド数多すぎ
③はレコードが増えすぎる
どれが一番現実的ですか?
0時から24時までを
true falseのbooleanフィールドを用意するとしたら
1つのテーブルの中に
①7 x 24 = 合計168フィールド+リレーションキー
を用意したほうがいいですか?
それとも
②日ごとの24フィールド + 1(曜日) + 1(リレーションキー)の合計26フィールド
③または時間ごとの
1(時間)フィールド+1(曜日)+1(リレーションキー)
の3フィールド
①は一つのテーブルで簡潔できるがフィールド数多すぎ
③はレコードが増えすぎる
どれが一番現実的ですか?
なにがしたいのかがわからんけどCharでいれてSubstringって手もある。
用途がわかればもうちょっと答えようもあるお
用途がわかればもうちょっと答えようもあるお
>>933
ユーザー(パートさん)ごとの24時間体制スケジュールを作ろうと思ってます
出勤できる曜日の時間帯は1(true)
出来ない日は0(false)
月 火 水 木 金 土 日
0 0
1 1
...
23 23
24 24
※ここでの数字は時間帯で、それぞれにチェックボックスがある
みたいな表にアクセスしてもらって、
そこでチェックを入れてもらって
どの曜日のどの時間は1か
というものを管理したいです。
ユーザー(パートさん)ごとの24時間体制スケジュールを作ろうと思ってます
出勤できる曜日の時間帯は1(true)
出来ない日は0(false)
月 火 水 木 金 土 日
0 0
1 1
...
23 23
24 24
※ここでの数字は時間帯で、それぞれにチェックボックスがある
みたいな表にアクセスしてもらって、
そこでチェックを入れてもらって
どの曜日のどの時間は1か
というものを管理したいです。
DBにする必要がないだろ・・・パート職員は何人いるんだよ?
どうしてもって言うなら一番で十分だと思うが。
どうしてもって言うなら一番で十分だと思うが。
全角の英数字を半角になおしたいです。
replace関数で一文字一文字変換するしか思いつきませんが、
他に簡単な方法はないでしょうか?
replace関数で一文字一文字変換するしか思いつきませんが、
他に簡単な方法はないでしょうか?
>>932が真偽値でテーブルつくるってユーザーごとにテーブルつくる気なのかなと思ってオカンがはしった
質問です。
mysqlのトランザクションは、開始してから一分ぐらいでタイムアウトするかと思うんですが、
1分以上かかるようなSQLでトランザクションを使いたい、という場合、
どうするべきなんでしょうか?
mysqlのトランザクションは、開始してから一分ぐらいでタイムアウトするかと思うんですが、
1分以上かかるようなSQLでトランザクションを使いたい、という場合、
どうするべきなんでしょうか?
>>943
トランザクションはタイムアウトしないぞ。
ロック待ちのことなら最初に設定すればよい
mysql> set innodb_lock_wait_timeout = 1000;
Query OK, 0 rows affected (0.00 sec)
トランザクションはタイムアウトしないぞ。
ロック待ちのことなら最初に設定すればよい
mysql> set innodb_lock_wait_timeout = 1000;
Query OK, 0 rows affected (0.00 sec)
MySQL初心者です。
id time name score の4つのカラムがあるテーブルから
以下の条件のデータを取得したいのです。
1.スコアが低い順で並べる(スコア=クリアタイムのため)
2.同じスコアがあれば、rankの値が並ぶ(2位が2人とか)
3.同じ名前であれば、最新のスコアと最も良いスコアの以外を省く
4.現在から24時間以上古いものは省く
timeはunixtimeで、名前は文字列、スコアはただの数値です。
すべてMySQLでできることなのではないかなとおもって実践しているのですが
経験不足なため、そこはPHPでやったほうがいいなど、根本的な指摘などあったら
そちらも含めてご伝授いただきたいです。
よろしくお願いいたします。
id time name score の4つのカラムがあるテーブルから
以下の条件のデータを取得したいのです。
1.スコアが低い順で並べる(スコア=クリアタイムのため)
2.同じスコアがあれば、rankの値が並ぶ(2位が2人とか)
3.同じ名前であれば、最新のスコアと最も良いスコアの以外を省く
4.現在から24時間以上古いものは省く
timeはunixtimeで、名前は文字列、スコアはただの数値です。
すべてMySQLでできることなのではないかなとおもって実践しているのですが
経験不足なため、そこはPHPでやったほうがいいなど、根本的な指摘などあったら
そちらも含めてご伝授いただきたいです。
よろしくお願いいたします。
>>947
MySqlで分析関数あるのかーと思ってみたけどやっぱないのか。
select の中でサブクエリってどうなの?っていつも思うんだけどどうなの処理速度的に。
イメージでは1件に対して1回SQL発行するからすごい処理時間かかりそうなんだけど・・
そのへんどうなの教えてエロい人
MySqlで分析関数あるのかーと思ってみたけどやっぱないのか。
select の中でサブクエリってどうなの?っていつも思うんだけどどうなの処理速度的に。
イメージでは1件に対して1回SQL発行するからすごい処理時間かかりそうなんだけど・・
そのへんどうなの教えてエロい人
質問です。
データベースを更新するときは、普通にトランザクションを使いますが、
参照する場合もトランザクションって使うものなのでしょうか?
時間のかかるデータ集計のSQLを実行しようと思っているのですが、
その間に更新されても影響がないようにしたいのです。
参照する場合もトランザクションを使う場合、終了する場合はコミットですか?ロールバックですか?
基本的な質問ですみませんが、よろしくご教示お願いいたします。m(_ _)m
データベースを更新するときは、普通にトランザクションを使いますが、
参照する場合もトランザクションって使うものなのでしょうか?
時間のかかるデータ集計のSQLを実行しようと思っているのですが、
その間に更新されても影響がないようにしたいのです。
参照する場合もトランザクションを使う場合、終了する場合はコミットですか?ロールバックですか?
基本的な質問ですみませんが、よろしくご教示お願いいたします。m(_ _)m
>>949
データ集計が1つのSQLならトランザクションいらない。
複数のSQLを駆使する必要があるなら最初に
START TRANSACTION WITH CONSISTENT SNAPSHOT;
する。
最後はコミット/ロールバックどちらでもよい。
データ集計が1つのSQLならトランザクションいらない。
複数のSQLを駆使する必要があるなら最初に
START TRANSACTION WITH CONSISTENT SNAPSHOT;
する。
最後はコミット/ロールバックどちらでもよい。



類似してるかもしれないスレッド
- MySQL 総合 Part22 (1001) - [94%] - 2012/7/10 16:45
- MySQL 総合 Part21 (1001) - [94%] - 2011/12/25 22:16
- MySQL 総合 Part25 (947) - [94%] - 2017/6/18 6:30
- MySQL 総合 Part24 (1010) - [94%] - 2015/2/14 4:46
- MySQL 総合 Part23 (992) - [94%] - 2013/8/11 17:00
- MySQL 総合 Part26 (860) - [94%] - 2023/2/2 9:30
- MySQL 総合 Part13 (996) - [89%] - 2008/6/10 21:02 ☆
- MySQL 総合 Part14 (1001) - [89%] - 2008/11/23 10:17 ☆
- MySQL 総合 Part15 (1001) - [89%] - 2009/4/20 12:15 ☆
- MySQL 総合 Part17 (1001) - [89%] - 2010/6/10 20:47 ○
- MySQL 総合 Part18 (986) - [89%] - 2011/1/17 15:46
- MySQL 総合 Part19 (982) - [89%] - 2011/6/9 2:33
- MySQL 総合 Part12 (1001) - [89%] - 2008/1/30 17:34 ○
- MySQL vs PostgreSQL Part2 (941) - [36%] - 2022/5/26 1:30 ○
トップメニューへ / →のくす牧場書庫について