2011-07-24 10 views
-1

私の請願のコントローラのインデックスページを表示すると、以下のエラーが表示されます。これはちょうど焼きました...私はこれがテーブル名がSQLの複数形ではないテーブル名に関連していると思われますが、テーブル名はケーキの命名規則に準拠していると思われます。Cakephp SQLエラー1064

SELECT `Petition`.`random_string`, `Petition`.`diary_number`, `Petition`.`group`, `Petition`.`created`, `Petition`.`modified`, `Petition`.`petitioner_type`, `Petition`.`signed`, `Petition`.`project_desc`, `Petition`.`amount_suggested`, `Petition`.`amount_accepted`, `Petition`.`project_type`, `Petition`.`project_decision`, `Petition`.`evaluation`, `Petition`.`admin_comments`, `Petition`.`commentator_comments`, `Petition`.`q1_petitioner`, `Petition`.`q1_partners`, `Petition`.`q1_regcode`, `Petition`.`q1_responsible`, `Petition`.`q1_position`, `Petition`.`q1_address`, `Petition`.`q1_zipcode`, `Petition`.`q1_city`, `Petition`.`q1_phone`, `Petition`.`q1_gsm`, `Petition`.`q1_email`, `Petition`.`q2_project_name`, `Petition`.`q2_target_group`, `Petition`.`q2_project_goal`, `Petition`.`q2_newones`, `Petition`.`q2_newgroups`, `Petition`.`q2_organizers`, `Petition`.`q2_donations`, `Petition`.`q2_type`, `Petition`.`q3_amount`, `Petition`.`q3_purpose`, `Petition`.`q3_account_number`, `Petition`.`q3_receiver`, `Petition`.`q4_sports`, `Petition`.`q4_participates`, `Petition`.`q4_places`, `Petition`.`q4_schedule`, `Petition`.`q4_marketing`, `Petition`.`q4_directors`, `Petition`.`q4_monitoring`, `Petition`.`q4_support`, `Petition`.`q4_collaboration`, `Petition`.`q5_costs`, `Petition`.`q5_costs_desc`, `Petition`.`q5_income`, `Petition`.`q5_income_desc`, `Petition`.`q5_invisible`, `Petition`.`s1_question1`, `Petition`.`s1_question2`, `Petition`.`s1_question3`, `Petition`.`s1_question4`, `Petition`.`s1_question5`, s1_question., `Petition`.`s2_question1`, `Petition`.`s2_question2`, `Petition`.`s2_question_3`, `Petition`.`s3_question1`, s3_question2., `Petition`.`s4_question1`, `Petition`.`s4_question2`, `Petition`.`s5_question1`, s5_question2. FROM `petitions` AS `Petition` WHERE 1 = 1 LIMIT 20 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' `Petition`.`s2_question1`, `Petition`.`s2_question2`, `Petition`.`s2_question_3' at line 1   0 
+0

完全なクエリをここに貼り付けることができますか、それを生成するコードの一部に貼り付けることはできますか?その部分から言うことは不可能です。 – JJJ

+0

私は要望どおり完全な質問を含んでいます。ありがとう –

答えて

0

テーブル名がPetitionの場合、Petitionという名前のテーブルから値を選択しようとするSQLコードは機能しません。私がCakephpの規約を理解することは、すべてのテーブルを小文字にすることを望んでいるので、おそらくこれはインフレクターを投げ捨てているでしょうか?参照:http://book.cakephp.org/view/1478/Inflector

+0

それは正しいですが、Cakeは 'SELECT Petition.id、... FROM petitions AS Petition'としてクエリを作成します。 – JJJ

+0

私はそれを得ました!それは問題であった "s1_question ..."、 "s2_question ..."、 "s3_question ..."の列でした。 MySQLには "..."という名前の問題があるので、 "..."を取り除いて正常に動作しています!以下 は、私が使用するコードです: ALTER TABLE 'petitions' CHANGE' s1_question ... '' s1_question'のINT(11)NOT NULL、 CHANGE 's3_question2 ...' 's3_question2'のINT(11)、NOT NULL 、 CHANGE 's5_question2 ...' 's5_question2' INT(11)NOT NULL これは誰かを助けることを願っています!私は今日何かを学んだ! –