Re: Error in Adding All Tables - Mailing list pgsql-general

From justin
Subject Re: Error in Adding All Tables
Date
Msg-id 490D2929.5070306@emproshunts.com
Whole thread Raw
In response to Error in Adding All Tables  (salman Sheikh <salman_sheikh@web.de>)
List pgsql-general
Exactly NO not a clue. Do a crtl+F which brings up the Search box in Visual Studio  search for  Select.  it will be in one of automatically created .cpp files.

Class builder  is suppose to create fully qualified queries  but in some cases it does not

mshelpfile <http://msdn.microsoft.com/en-us/library/s9ds2ktb%28VS.80%29.aspx>

the command will look something like
DatabaseConnectionObject.ExecuteSql=  "Select column1, column2, column3 column4 from Mytable  Left Join  Othertable on ctid = ctid ".

it needs to look like this
DatabaseConnectionObject.ExecuteSql =   "Select column1, column2, column3 column4 from Mytable  Left Join  Othertable on OtherTable.ctid = MyTable.ctid "

One method that is used by a number people is make sure columns in tables never share the same name. one way is use the first 3 letters of a table followed by an underscore then name of the column example ( oth_citd  and myt_ctid)  This way one never has to worry typing fully qualified names.

This is a method i use when setting up tables.  
I strongly suggest learning SQL syntax.  If you can wrap your mind around C++ and its quirks you can very quickly learn SQL
Also you will need to learn
http://www.postgresql.org/docs/current/static/plpgsql.html
its very easy to pick up also and write complicated stored procedures to manipulated data

Also take note what qualifies as SQL command in Access sometimes will not work in Postgresql

Another thought is not use ODBC at all and use
libpq  <http://www.postgresql.org/docs/8.3/interactive/libpq.html> there more work involved.


salman Sheikh wrote:


HI justin

actually i am newbie in this field,thatwhy i dont have much knowledge it. Now i understand the problem,but i am using MFC classes,as i told u it generates automatically, do u have any idea where should i change the code?

i am very thankful to you man

sheikh

------------------------------------------------------------------------
*Von:* "justin" <justin@emproshunts.com>
*Gesendet:* 02.11.08 02:34:44
*An:* pgsql-general@postgresql.org
*Betreff:* Re: [GENERAL] Error in Adding All Tables

Yes, i'm working with VS 2008 with QT framework working on aapplication with i don't know couple hundred thousand lines of code.

Been using VS sense 1997  how about you???

One of your big problems is your using the Automatic Class builder. Its sucks and is what is causing you r problem as it creates code thatdon't work.

Case in point the SQL code is wrong.
In this case the Select statement being created is trying to join twotables together that have the same column name

Select * from mytable, othertable where ctid = ctid
this command will create the error you have

now to avoid the error it should look like this
Select * from mytable, othertable where mytable.ctid = othertable.ctid

Now Postgresql knows what you want it to do.  Before the Postgresql hastwo columns with the same name and does not understand how to join thetwo tables

Find the the code where the Select statement is change the Joiningargument


salman Sheikh wrote:


    Hi Justin

    thanks for helping me,

    But can i ask u ,have u ever worked with Visual C++ 2005.It
    doesevery thing automatically,u just click on the button it will
    generatsall classes, for example View class, document class Set
    class and soon,Set class is actually connection class,which
    connect applicationwith database, and shows all columns of the
    table which we added inthis application,thatwhy i dont need to
    write any sql code for addingall table,how long i know,if i am
    wrong pls correct me.

    thanks once more Jusitn

    sheikh

    ------------------------------------------------------------------------
    *Von:* "justin" <justin@emproshunts.com>
    *Gesendet:* 02.11.08 02:02:21
    *An:* pgsql-general@postgresql.org
    *Betreff:* Re: [GENERAL] Error in Adding All Tables

    you mean you are trying some kind of table joining correct???

    example

    Select * from mytable, othertable where ctid = ctid ???

    Please post the SQL statement you are using to communicate
    withthedatabase.     The select insert update commands.   If i could see what you are
    doingiwould have solved your problem 3 emails ago.

    just post the C++ code that has the problem




    salman Sheikh wrote:


         Hi

        i just want to add table through MFC application,in VisualC++
        itgenerates all classes automatically,if i add table one by
        one,itshowsno problem.i can comunicate with my database.But if
        i add 2 ormoretables togather,then it shows this error, i dont
        know why?

        sheikh

        ------------------------------------------------------------------------
        *Von:* "justin" <justin@emproshunts.com>
        *Gesendet:* 02.11.08 01:48:04
        *An:* pgsql-general-owner@postgresql.org
        *Betreff:* Re: [GENERAL] Error in Adding All Tables

        I have no idea what you are trying to do??   pleasesend
        theSQLcommands you are using.
        For me to help you
        Need to know what you are trying to accomplish and need to see
        the code!


        salman Sheikh wrote:


             hi

            Do u ha ve any suggestion regarding this problem?

            can u add all tables once in postgresql?

            In MS access i can add table once without anyproblem.

            sheikh

            ------------------------------------------------------------------------
            *Von:* "justin" <justin@emproshunts.com></A>
            *Gesendet:* 02.11.08 01:23:15
            *An:* salman Sheikh
            *CC:* pgsql-general@postgresql.org,pgsql-odbc@postgresql.org
            *Betreff:* Re: [GENERAL] Error in AddingAll Tables

            @WEB.DE>

            salman Sheikh wrote:



                Hi freinds,
                i wanted to add my all tables once in MFC application,

                i have a databank,which has 11tables and iwant toa
                dd themall togather.

                 After Adding all tables, it showsme alwaysthiserrors
                bydebugging.


                ERROR: column reference "ctid" is ambiguous;
                Error while executing the query

                i need help from u ppl. I am usingVisualC++
                2005andpostgresql 8.3.

                thanks
                She ikh



                Psssst!SchonvomneuenWEB.DE MultiMessenger geh&oum
                l;rt?                    Der kann`s mit allen:
                *http://www.produkte.web.de/messenger/?did=3123* 


            Without looking at the sql statement you are using its
            kindahardtoknowwhat the problem is

            but ambiguous column means the Postgresql can't figure o
            utwhatyouwantto do as the column shows up twice in a command.





            n5Schritten zur eigenenHomepage. Jetzt Domain sichern und
            gestalten!                Nur 3,99 EUR/Monat!
            *http://www.maildomain.web.de/?mc=021114*
            <htt%0A%20p://www.maildomain.web.de/?mc=021114> 




        erWEB.DESmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu
        sparen!           *http://smartsurfer.web.de/?mc=100071&distributionid=000000000066*
        <http://smartsurfer.web.de/?mc=100071&distributionid=000000000066> 





    n 5Schritten zur eigenen Homepa ge. Jetzt Domain sichern und
    gestalten!        Nur 3,99 EUR/Monat! *http://www.maildomain.web.de/?mc=021114* 




n 5 Schritten zur eigenen Homepage. Jetzt Domain sichern und gestalten!    Nur 3,99 EUR/Monat! *http://www.maildomain.web.de/?mc=021114* 



pgsql-general by date:

Previous
From: Robert Treat
Date:
Subject: Re: speed up restore from dump
Next
From: Oleg Bartunov
Date:
Subject: chinese parser for text search !