質問編集履歴

3

セキュリティの関わる問題なので削除させていただきました。

2018/06/18 10:07

投稿

amaguri
amaguri

スコア227

test CHANGED
@@ -1 +1 @@
1
- cakephp 引数が使いた
1
+ セキュリティの関わる問題なので削除させていただきました。
test CHANGED
@@ -1,179 +1 @@
1
- やりたいこと
2
-
3
- コントローラーのtbl_dataメゾッドないの
4
-
5
- ```ここに言語を入力
6
-
7
- $sql ="select CV2.* from COLUMNS_V2 CV2 inner join SDS SDS on SDS.CD_ID = CV2.CD_ID inner join TBLS TBLS on SDS.SD_ID = TBLS.SD_ID and TBLS.TBL_NAME='$tbl_name' and TBLS.DB_ID = $db_id";
8
-
9
- ```
10
-
11
- のためにtbl_dataに($db_id)をして$db_idを持ってきたい。
12
-
13
- いまのままだと$db_idの取得ができないのでtbl_dataに$db_idを渡すにはどうしたらできますか?
14
-
15
- ```ここに言語を入力
16
-
17
- controller
18
-
19
-
20
-
21
- <?php
22
-
23
- class EntityController extends AppController {
24
-
25
- var $name = 'Entity';
26
-
27
- var $components = array('RequestHandler','Auth','Common');
28
-
29
- var $user;
30
-
31
-
32
-
33
- function index() {
34
-
35
-
36
-
37
- $this->Entity->setDataSource('hive');
38
-
39
- //$this->layout='entity';//使用するレイアウト
40
-
41
- //DB一覧取得
42
-
43
- $sql ="select * from DBS;";
44
-
45
- $result= $this->Entity->query($sql);
46
-
47
- $this->set('para', $result);
48
-
49
- }
50
-
51
-
52
-
53
- function entity_tbl($db_id){
1
+ セキュリティの関わる問題なので削除させていただきました。
54
-
55
- $this->Entity->setDataSource('hive');
56
-
57
- $sql ="select * from TBLS where DB_ID =$db_id;";
58
-
59
- $result= $this->Entity->query($sql);
60
-
61
- $this->set('para', $result);
62
-
63
- }
64
-
65
-
66
-
67
- function tbl_data($tbl_name,$db_id){
68
-
69
- $this->Entity->setDataSource('hive');
70
-
71
- debug($tbl_name);
72
-
73
- $sql ="select CV2.* from COLUMNS_V2 CV2 inner join SDS SDS on SDS.CD_ID = CV2.CD_ID inner join TBLS TBLS on SDS.SD_ID = TBLS.SD_ID and TBLS.TBL_NAME='$tbl_name' and TBLS.DB_ID = $db_id";
74
-
75
- $result= $this->Entity->query($sql);
76
-
77
- $this->set('para', $result);
78
-
79
-
80
-
81
- $sql ="select * from PARTITIONS where TBL_ID='$tbl_id';";
82
-
83
- $partitions= $this->Entity->query($sql);
84
-
85
- $this->set('partitions', $partitions);
86
-
87
- }
88
-
89
-
90
-
91
-
92
-
93
- }
94
-
95
- ```
96
-
97
- ```ここに言語を入力
98
-
99
- index
100
-
101
- <body>
102
-
103
- <h2>DB一覧</h2>
104
-
105
- <ul>
106
-
107
- <?php foreach($para as $name): ?>
108
-
109
- <li>
110
-
111
- <?php echo $this->Html->link($name['DBS']['NAME'],array('action'=>'entity_tbl',$name['DBS']['DB_ID']));?>
112
-
113
- </li>
114
-
115
- <?php endforeach; ?>
116
-
117
- </ul>
118
-
119
- </body>
120
-
121
- ```
122
-
123
- ```ここに言語を入力
124
-
125
- entity_tbl
126
-
127
- <body>
128
-
129
- <h2>テーブル一覧</h2>
130
-
131
- <ul>
132
-
133
- <?php foreach((array)$para as $name): ?>
134
-
135
- <li>
136
-
137
- <?php echo $this->Html->link($name['TBLS']['TBL_NAME'],array('action'=>'tbl_data',$name['TBLS']['TBL_NAME']));?>
138
-
139
- <?php $db_id=$name['TBLS']['TBL_ID']?>
140
-
141
- </li>
142
-
143
- <?php endforeach; ?>
144
-
145
- </ul>
146
-
147
- </body>
148
-
149
- ```
150
-
151
- ```ここに言語を入力
152
-
153
- <ul>
154
-
155
- <?php foreach((array)$para as $name): ?>
156
-
157
- <li>
158
-
159
- <?php echo "カラム名:",$name['COLUMNS_V2']['COLUMN_NAME'].PHP_EOL,"データ型:",$name['COLUMNS_V2']['TYPE_NAME'];?>
160
-
161
- </li>
162
-
163
- <?php endforeach; ?>
164
-
165
- <?php foreach((array)$partitions as $partition): ?>
166
-
167
- <li>
168
-
169
- <?php debug($partition); ?>
170
-
171
- <?php echo "パーティション:",$partition['PARTITIONS']['PART_NAME'];?>
172
-
173
- </li>
174
-
175
- <?php endforeach; ?>
176
-
177
- </ul>
178
-
179
- ```

2

SQL文の編集

2018/06/18 10:07

投稿

amaguri
amaguri

スコア227

test CHANGED
File without changes
test CHANGED
@@ -78,7 +78,7 @@
78
78
 
79
79
 
80
80
 
81
- $sql ="select * from PARTITIONS where SD_ID in (select SD_ID from TBLS where TBL_NAME='$tbl_name');";
81
+ $sql ="select * from PARTITIONS where TBL_ID='$tbl_id';";
82
82
 
83
83
  $partitions= $this->Entity->query($sql);
84
84
 

1

entity\.ctpの修正

2016/10/21 09:09

投稿

amaguri
amaguri

スコア227

test CHANGED
File without changes
test CHANGED
@@ -126,15 +126,17 @@
126
126
 
127
127
  <body>
128
128
 
129
- <h2>DB一覧</h2>
129
+ <h2>テーブル一覧</h2>
130
130
 
131
131
  <ul>
132
132
 
133
- <?php foreach($para as $name): ?>
133
+ <?php foreach((array)$para as $name): ?>
134
134
 
135
135
  <li>
136
136
 
137
- <?php echo $this->Html->link($name['DBS']['NAME'],array('action'=>'entity_tbl',$name['DBS']['DB_ID']));?>
137
+ <?php echo $this->Html->link($name['TBLS']['TBL_NAME'],array('action'=>'tbl_data',$name['TBLS']['TBL_NAME']));?>
138
+
139
+ <?php $db_id=$name['TBLS']['TBL_ID']?>
138
140
 
139
141
  </li>
140
142