<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, Aug 15, 2014 at 1:24 PM, Smita <span dir="ltr"><<a href="mailto:kumarismita62@gmail.com" target="_blank">kumarismita62@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div><div><div><div><div><div><div><div><div><div><div><div><div>Hi,<br></div><br>
</div>I came across the <a href="http://sourceforge.net/p/phpmyadmin/bugs/4444/" target="_blank">bug #4444</a> related to export feature for queries. <br>
I'm not sure how exactly this feature is supposed to behave if we are exporting rows with some but not all columns and also in case we have aliases and even when we have join queries.<br></div></div></div></div></div>
</div></div></div></div></div></div></div></div></blockquote><div><br></div><div>We don't have to worry about aliases of table/column names here, just insert queries should get generated with original names and column selected in query. Create table can have complete table structure.<br>
<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div><div><div><div><div><div><div><div><div><div><div><br></div>Assume we have tables:<br>
actor (actor_id, first_name, last_name, city_id) with actor_id as primary key.<br></div>address (address_id, adress, city_id, city_id, district, postal_code, phone) with address_id as primary key and phone have not null unique constraints.<br>
<br></div>1. when we select some but not all columns ex, <br>Select address_id, address from address:<br></div>when exported few of the rows, it have create table statement for table 'address' with all the original columns not just these two. and data from just these two columns in the Insert statements. so here when the same exported file, we wish to import back will not work as phone have unique constraint and we are not inserting the phone values.<br>
</div>Also If user is seeing just two of the columns in the table structure at screen so they might be doing export thinking that it will be exporting the same structure as on the screen.<br></div></div></div></div></div>
</div></div></div></blockquote><div><br></div><div>I remember a discussion over this with Madhura. See <a href="https://sourceforge.net/p/phpmyadmin/bugs/4443/">https://sourceforge.net/p/phpmyadmin/bugs/4443/</a><br><br></div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div><div><div><div><div><div><br></div>2. When we have aliases in column names:<br>
</div>ex: select actor_id, first_name as fname from actor;<br></div>So when we export few of the resultant rows, should the create table statement have a column name first_name or fname ?. As I think of it, It should be fname, if user have in mind that he is exporting the structure of the table he is looking at screen.<br>
<br></div></div></div></div></div></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div><div><div>
<br></div>3. When we have alias in table names:<br></div>The name of the table in create statement should be alias name or original table name?<br></div></div></div></blockquote><div><br></div><div>For 2nd and 3rd questions, This feature is implemented and will be present in 4.3. See RFE #755 & RFE #759.<br>
<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div><br></div>4. When we have JOIN queries with more than one tables:<br>
</div>
<div>ex:</div><div><div><div><div><div><div><div><div><div><div><div><div><div><div><div><div>SELECT * FROM (SELECT actor_id FROM actor as e INNER JOIN address as g on e.actor_id = g.city_id) as t1<br></div><div>Currently if we try to export some rows from the above query, it export nothing it goes on edit sql screen.<br>
</div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></blockquote><div><br></div><div>I also remember one discussion over this with Marc. I am quoting his reply here "exporting a join query makes no sense to me". Also see bug #4445.<br>
<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div><div><div><div><div><div><div><div><div><div><div><div><div><div>
<div>
</div><div><br></div><div>Please share your thoughts.<br><br></div><div>Thanks and Regards<span class=""><font color="#888888"><br></font></span></div><span class=""><font color="#888888"><div>- Smita<br></div></font></span></div>
</div></div></div></div></div></div></div></div></div></div></div></div></div></div></div>
</blockquote></div><br>-- <br><div dir="ltr">Regards,<br>Chirayu Chiripal<br>phpMyAdmin Intern - Google Summer of Code 2014<br><a href="https://chirayuchiripal.wordpress.com/" target="_blank">https://chirayuchiripal.wordpress.com/</a><br>
</div>
</div></div>