Thread: problem odbc 8.0 with EOModeler
I've used EOModeler with odbc for MS SQL Server,=20 MySQL and MS Access with no problem. But got=20 problem with postgre odbc driver. (the newest one)=20 EOMOdeler cannot get postgresql column types' info=20 through odbc. Also, It cannot interact with EOModeler for very simple query: SQLExecDirectin - [ODBCChannel evaluateExpression: (<ODBCSQLExpression: "SELECT t0.pname,t0.person_id FROM person t0 WHERE t0.pname =3D ? " withBindings: (1:Elim(name)) >)] S 1000-7: ERROR: column 'elim' doesnot exitst EOModeler is an app in WebObjects (www.apple.com)=20 I'm using version 4.5.1 ObjC. EOModeler has adaptors for Oracle, Infomix, Sybase, Openbase. All works very well. My guess is that postgresql-odbc has some non-standard api and so EOModeler fails to work with it.
Is the column name "Elim" or "elim"? If the former, try putting quotes aro= und it, as required by the ANSI and ISO standards for mixed case identifier= s. Some database products fail to comply with the standards in this respec= t. PostgreSQL comes close, although it treats unquoted identifers as all l= ower case rather than all upper case as required by the standards. =20 -Kevin =20 =20 >>> "YL" <elim@pdtnetworks.net> 07/30/05 3:48 PM >>> I've used EOModeler with odbc for MS SQL Server,=20 MySQL and MS Access with no problem. But got=20 problem with postgre odbc driver. (the newest one)=20 EOMOdeler cannot get postgresql column types' info=20 through odbc. Also, It cannot interact with EOModeler for very simple query: SQLExecDirectin - [ODBCChannel evaluateExpression: (<ODBCSQLExpression: "SELECT t0.pname,t0.person_id FROM person t0 WHERE t0.pname =3D ? " withBindings: (1:Elim(name)) >)] S 1000-7: ERROR: column 'elim' doesnot exitst EOModeler is an app in WebObjects (www.apple.com)=20 I'm using version 4.5.1 ObjC. EOModeler has adaptors for Oracle, Infomix, Sybase, Openbase. All works very well. My guess is that postgresql-odbc has some non-standard api and so EOModeler fails to work with it.
Thanks Eric and Kevin for the responses to my post. My Testing table was Person (person_id int not null, name varchar(32)) and my query typed in EOModeler is name = 'Elim' EOModeler has an interface letting you specify connection method. There are adaptors (oracle, informix, sybase...) and odbc data source the choose from. My headache is that for the same setting and table in difference database server and odbc datasource, i have no problem with the query except when i switch the data source to postgresql odbc. It has two things not normal to me: [unlike other database and odbc, postgresql-odbc reveals no database column type list to EOModeler which i believe a missing of some api standard to other odbc implementations. For example, mysql odbc lets EOModeler show the available column types such as int, mediumint, tinyint, char, varchar, text ....So that one can specify column types when model an entity (table)] and the error msg (from EOModeler) SQLExecDirect in -[ODBCChannel evaluateExpression:(<ODBCSQLExpression: "SELECT t0."pname", t0."person_id" FROM "person" t0 WHERE t0."pname" = ?" withBindings:(1:Elim(pname))>)] S1000-7: ERROR: column "elim" does not exist (sorry I took the quotes around the column name 'pname' in my previous post) Means that somehow my matching value 'Elim' been interpreted as column name!!! since the same query works perfect with other kind of odbc data sources, i guess this really indicate that EOModeler and postgresql-odbc can not communicate correctly. in other words, postgresql-odbc has special API's that not make sense to EOModeler. ----- Original Message ----- From: "Kevin Grittner" <Kevin.Grittner@wicourts.gov> To: <elim@pdtnetworks.net>; <pgsql-bugs@postgresql.org> Sent: Monday, August 01, 2005 8:25 AM Subject: Re: [BUGS] problem odbc 8.0 with EOModeler Is the column name "Elim" or "elim"? If the former, try putting quotes around it, as required by the ANSI and ISO standards for mixed case identifiers. Some database products fail to comply with the standards in this respect. PostgreSQL comes close, although it treats unquoted identifers as all lower case rather than all upper case as required by the standards. -Kevin >>> "YL" <elim@pdtnetworks.net> 07/30/05 3:48 PM >>> I've used EOModeler with odbc for MS SQL Server, MySQL and MS Access with no problem. But got problem with postgre odbc driver. (the newest one) EOMOdeler cannot get postgresql column types' info through odbc. Also, It cannot interact with EOModeler for very simple query: SQLExecDirectin - [ODBCChannel evaluateExpression: (<ODBCSQLExpression: "SELECT t0.pname,t0.person_id FROM person t0 WHERE t0.pname = ? " withBindings: (1:Elim(name)) >)] S 1000-7: ERROR: column 'elim' doesnot exitst EOModeler is an app in WebObjects (www.apple.com) I'm using version 4.5.1 ObjC. EOModeler has adaptors for Oracle, Infomix, Sybase, Openbase. All works very well. My guess is that postgresql-odbc has some non-standard api and so EOModeler fails to work with it. -- Checked by AVG Anti-Virus. Version: 7.0.338 / Virus Database: 267.9.7/60 - Release Date: 7/28/2005
It looks like this is being treated on the server as though the statement i= s: =20 SELECT t0."pname", t0."person_id" FROM "person" t0 WHERE t0."pname" =3D Elim =20 rather than: =20 SELECT t0."pname", t0."person_id" FROM "person" t0 WHERE t0."pname" =3D 'Elim' =20 =20 >>> "YL" <elim@pdtnetworks.net> 08/01/05 1:07 PM >>> Thanks Eric and Kevin for the responses to my post. My Testing table was Person (person_id int not null, name varchar(32)) and my query typed in EOModeler is name =3D 'Elim' EOModeler has an interface letting you specify connection method. There are adaptors (oracle, informix, sybase...) and odbc data source the choose from. My headache is that for the same setting and table in difference database server and odbc datasource, i have no problem with the query except when i switch the data source to postgresql odbc. It has two things not normal to me: [unlike other database and odbc, postgresql-odbc reveals no database column type list to EOModeler which i believe a missing of some api standard to other odbc implementations. For example, mysql odbc lets EOModeler show the available column types such as int, mediumint, tinyint, char, varchar, text ....So that one can specify column types when model an entity (table)] and the error msg (from EOModeler) SQLExecDirect in -[ODBCChannel evaluateExpression:(<ODBCSQLExpression: "SELECT t0."pname", t0."person_id" FROM "person" t0 WHERE t0."pname" =3D = ?" withBindings:(1:Elim(pname))>)] S1000-7: ERROR: column "elim" does not exist (sorry I took the quotes around the column name 'pname' in my previous post) Means that somehow my matching value 'Elim' been interpreted as column name!!! since the same query works perfect with other kind of odbc data sources, i guess this really indicate that EOModeler and postgresql-odbc can not communicate correctly. in other words, postgresql-odbc has special API's that not make sense to EOModeler. ----- Original Message -----=20 From: "Kevin Grittner" <Kevin.Grittner@wicourts.gov> To: <elim@pdtnetworks.net>; <pgsql-bugs@postgresql.org> Sent: Monday, August 01, 2005 8:25 AM Subject: Re: [BUGS] problem odbc 8.0 with EOModeler Is the column name "Elim" or "elim"? If the former, try putting quotes around it, as required by the ANSI and ISO standards for mixed case identifiers. Some database products fail to comply with the standards in this respect. PostgreSQL comes close, although it treats unquoted identifers as all lower case rather than all upper case as required by the standards. -Kevin >>> "YL" <elim@pdtnetworks.net> 07/30/05 3:48 PM >>> I've used EOModeler with odbc for MS SQL Server, MySQL and MS Access with no problem. But got problem with postgre odbc driver. (the newest one) EOMOdeler cannot get postgresql column types' info through odbc. Also, It cannot interact with EOModeler for very simple query: SQLExecDirectin - [ODBCChannel evaluateExpression: (<ODBCSQLExpression: "SELECT t0.pname,t0.person_id FROM person t0 WHERE t0.pname =3D ? " withBindings: (1:Elim(name)) >)] S 1000-7: ERROR: column 'elim' doesnot exitst EOModeler is an app in WebObjects (www.apple.com) I'm using version 4.5.1 ObjC. EOModeler has adaptors for Oracle, Infomix, Sybase, Openbase. All works very well. My guess is that postgresql-odbc has some non-standard api and so EOModeler fails to work with it. --=20 Checked by AVG Anti-Virus. Version: 7.0.338 / Virus Database: 267.9.7/60 - Release Date: 7/28/2005 ---------------------------(end of broadcast)--------------------------- TIP 5: don't forget to increase your free space map settings
Hi Kevin, you're right. When i type pname = '\'Elim\'' in the EOModeler, it works (fetches the right match). i can even do pname like '\'Eli*\'' with the right results. But what this mean in odbc level? (i don't need to add additional quotes for other odbc data sources) When query against numerical columns, things works quite well ----- Original Message ----- From: "Kevin Grittner" <Kevin.Grittner@wicourts.gov> To: <whalesuit@bonbon.net>; <elim@pdtnetworks.net>; <pgsql-bugs@postgresql.org> Sent: Monday, August 01, 2005 12:31 PM Subject: Re: [BUGS] problem odbc 8.0 with EOModeler It looks like this is being treated on the server as though the statement is: SELECT t0."pname", t0."person_id" FROM "person" t0 WHERE t0."pname" = Elim rather than: SELECT t0."pname", t0."person_id" FROM "person" t0 WHERE t0."pname" = 'Elim' >>> "YL" <elim@pdtnetworks.net> 08/01/05 1:07 PM >>> Thanks Eric and Kevin for the responses to my post. My Testing table was Person (person_id int not null, name varchar(32)) and my query typed in EOModeler is name = 'Elim' EOModeler has an interface letting you specify connection method. There are adaptors (oracle, informix, sybase...) and odbc data source the choose from. My headache is that for the same setting and table in difference database server and odbc datasource, i have no problem with the query except when i switch the data source to postgresql odbc. It has two things not normal to me: [unlike other database and odbc, postgresql-odbc reveals no database column type list to EOModeler which i believe a missing of some api standard to other odbc implementations. For example, mysql odbc lets EOModeler show the available column types such as int, mediumint, tinyint, char, varchar, text ....So that one can specify column types when model an entity (table)] and the error msg (from EOModeler) SQLExecDirect in -[ODBCChannel evaluateExpression:(<ODBCSQLExpression: "SELECT t0."pname", t0."person_id" FROM "person" t0 WHERE t0."pname" = ?" withBindings:(1:Elim(pname))>)] S1000-7: ERROR: column "elim" does not exist (sorry I took the quotes around the column name 'pname' in my previous post) Means that somehow my matching value 'Elim' been interpreted as column name!!! since the same query works perfect with other kind of odbc data sources, i guess this really indicate that EOModeler and postgresql-odbc can not communicate correctly. in other words, postgresql-odbc has special API's that not make sense to EOModeler. ----- Original Message ----- From: "Kevin Grittner" <Kevin.Grittner@wicourts.gov> To: <elim@pdtnetworks.net>; <pgsql-bugs@postgresql.org> Sent: Monday, August 01, 2005 8:25 AM Subject: Re: [BUGS] problem odbc 8.0 with EOModeler Is the column name "Elim" or "elim"? If the former, try putting quotes around it, as required by the ANSI and ISO standards for mixed case identifiers. Some database products fail to comply with the standards in this respect. PostgreSQL comes close, although it treats unquoted identifers as all lower case rather than all upper case as required by the standards. -Kevin >>> "YL" <elim@pdtnetworks.net> 07/30/05 3:48 PM >>> I've used EOModeler with odbc for MS SQL Server, MySQL and MS Access with no problem. But got problem with postgre odbc driver. (the newest one) EOMOdeler cannot get postgresql column types' info through odbc. Also, It cannot interact with EOModeler for very simple query: SQLExecDirectin - [ODBCChannel evaluateExpression: (<ODBCSQLExpression: "SELECT t0.pname,t0.person_id FROM person t0 WHERE t0.pname = ? " withBindings: (1:Elim(name)) >)] S 1000-7: ERROR: column 'elim' doesnot exitst EOModeler is an app in WebObjects (www.apple.com) I'm using version 4.5.1 ObjC. EOModeler has adaptors for Oracle, Infomix, Sybase, Openbase. All works very well. My guess is that postgresql-odbc has some non-standard api and so EOModeler fails to work with it. -- Checked by AVG Anti-Virus. Version: 7.0.338 / Virus Database: 267.9.7/60 - Release Date: 7/28/2005 ---------------------------(end of broadcast)--------------------------- TIP 5: don't forget to increase your free space map settings -- Checked by AVG Anti-Virus. Version: 7.0.338 / Virus Database: 267.9.7/60 - Release Date: 7/28/2005
I'm not sure what it means at the ODBC level, since I don't use ODBC. I wa= s hoping my observations might help you in the right direction anyway. =20 If you need to stay with ODBC, you might try posting to the ODBC mailing li= st rather than the bugs list -- the problem seems to be in the ODBC driver,= and a message on that list might get read by people more familiar with tha= t driver. =20 I see in a posting from Theodore Petrosky that EOModler works with JDBC. I= f you can use that instead, you are likely to be better off than with ODBC. =20 -Kevin =20 =20 >>> "YL" <elim@pdtnetworks.net> 08/01/05 1:47 PM >>> Hi Kevin, you're right. When i type pname =3D '\'Elim\'' in the EOModeler, it works (fetches the right match). i can even do pname like '\'Eli*\'' with the right results. But what this mean in odbc level? (i don't need to add additional quotes for other odbc data sources) When query against numerical columns, things works quite well ----- Original Message -----=20 From: "Kevin Grittner" <Kevin.Grittner@wicourts.gov> To: <whalesuit@bonbon.net>; <elim@pdtnetworks.net>; <pgsql-bugs@postgresql.org> Sent: Monday, August 01, 2005 12:31 PM Subject: Re: [BUGS] problem odbc 8.0 with EOModeler It looks like this is being treated on the server as though the statement is: SELECT t0."pname", t0."person_id" FROM "person" t0 WHERE t0."pname" =3D Elim rather than: SELECT t0."pname", t0."person_id" FROM "person" t0 WHERE t0."pname" =3D 'Elim' >>> "YL" <elim@pdtnetworks.net> 08/01/05 1:07 PM >>> Thanks Eric and Kevin for the responses to my post. My Testing table was Person (person_id int not null, name varchar(32)) and my query typed in EOModeler is name =3D 'Elim' EOModeler has an interface letting you specify connection method. There are adaptors (oracle, informix, sybase...) and odbc data source the choose from. My headache is that for the same setting and table in difference database server and odbc datasource, i have no problem with the query except when i switch the data source to postgresql odbc. It has two things not normal to me: [unlike other database and odbc, postgresql-odbc reveals no database column type list to EOModeler which i believe a missing of some api standard to other odbc implementations. For example, mysql odbc lets EOModeler show the available column types such as int, mediumint, tinyint, char, varchar, text ....So that one can specify column types when model an entity (table)] and the error msg (from EOModeler) SQLExecDirect in -[ODBCChannel evaluateExpression:(<ODBCSQLExpression: "SELECT t0."pname", t0."person_id" FROM "person" t0 WHERE t0."pname" =3D = ?" withBindings:(1:Elim(pname))>)] S1000-7: ERROR: column "elim" does not exist (sorry I took the quotes around the column name 'pname' in my previous post) Means that somehow my matching value 'Elim' been interpreted as column name!!! since the same query works perfect with other kind of odbc data sources, i guess this really indicate that EOModeler and postgresql-odbc can not communicate correctly. in other words, postgresql-odbc has special API's that not make sense to EOModeler. ----- Original Message -----=20 From: "Kevin Grittner" <Kevin.Grittner@wicourts.gov> To: <elim@pdtnetworks.net>; <pgsql-bugs@postgresql.org> Sent: Monday, August 01, 2005 8:25 AM Subject: Re: [BUGS] problem odbc 8.0 with EOModeler Is the column name "Elim" or "elim"? If the former, try putting quotes around it, as required by the ANSI and ISO standards for mixed case identifiers. Some database products fail to comply with the standards in this respect. PostgreSQL comes close, although it treats unquoted identifers as all lower case rather than all upper case as required by the standards. -Kevin >>> "YL" <elim@pdtnetworks.net> 07/30/05 3:48 PM >>> I've used EOModeler with odbc for MS SQL Server, MySQL and MS Access with no problem. But got problem with postgre odbc driver. (the newest one) EOMOdeler cannot get postgresql column types' info through odbc. Also, It cannot interact with EOModeler for very simple query: SQLExecDirectin - [ODBCChannel evaluateExpression: (<ODBCSQLExpression: "SELECT t0.pname,t0.person_id FROM person t0 WHERE t0.pname =3D ? " withBindings: (1:Elim(name)) >)] S 1000-7: ERROR: column 'elim' doesnot exitst EOModeler is an app in WebObjects (www.apple.com) I'm using version 4.5.1 ObjC. EOModeler has adaptors for Oracle, Infomix, Sybase, Openbase. All works very well. My guess is that postgresql-odbc has some non-standard api and so EOModeler fails to work with it. --=20 Checked by AVG Anti-Virus. Version: 7.0.338 / Virus Database: 267.9.7/60 - Release Date: 7/28/2005 ---------------------------(end of broadcast)--------------------------- TIP 5: don't forget to increase your free space map settings --=20 Checked by AVG Anti-Virus. Version: 7.0.338 / Virus Database: 267.9.7/60 - Release Date: 7/28/2005 ---------------------------(end of broadcast)--------------------------- TIP 3: Have you checked our extensive FAQ? http://www.postgresql.org/docs/faq
Hi YL, You may also want to check that EOModeler is not quoting strings with double quotes (") rather than single-quotes (') in ODBC, say by auditing the same call to MySQL. And maybe check out which ODBC version calls EOModeler is calling, and sounds like it could potentially(!) be using legacy calls to the ODBC driver. I can't say I know enough about ODBC to be able to guide you on that, but I believe the pgsql-odbc list has a number of members who can. Cheers, EE YL wrote: >Hi Kevin, you're right. When i type >pname = '\'Elim\'' >in the EOModeler, it works (fetches the right match). >i can even do >pname like '\'Eli*\'' >with the right results. >But what this mean in odbc level? (i don't need to add additional quotes for >other odbc data sources) > >When query against numerical columns, things works quite well > >----- Original Message ----- >From: "Kevin Grittner" <Kevin.Grittner@wicourts.gov> >To: <whalesuit@bonbon.net>; <elim@pdtnetworks.net>; ><pgsql-bugs@postgresql.org> >Sent: Monday, August 01, 2005 12:31 PM >Subject: Re: [BUGS] problem odbc 8.0 with EOModeler > > >It looks like this is being treated on the server as though the statement >is: > >SELECT t0."pname", t0."person_id" > FROM "person" t0 WHERE t0."pname" = Elim > >rather than: > >SELECT t0."pname", t0."person_id" > FROM "person" t0 WHERE t0."pname" = 'Elim' > > > > >>>>"YL" <elim@pdtnetworks.net> 08/01/05 1:07 PM >>> >>>> >>>> >Thanks Eric and Kevin for the responses to my post. > >My Testing table was >Person (person_id int not null, name varchar(32)) >and my query typed in EOModeler is > name = 'Elim' > >EOModeler has an interface letting you specify connection method. >There are adaptors (oracle, informix, sybase...) and odbc data source >the choose from. > >My headache is that for the same setting and table in difference >database server and odbc datasource, i have no problem with the >query except when i switch the data source to postgresql odbc. > >It has two things not normal to me: [unlike other database and odbc, >postgresql-odbc reveals no database column type list to EOModeler >which i believe a missing of some api standard to other odbc >implementations. >For example, mysql odbc lets EOModeler show the available column >types such as int, mediumint, tinyint, char, varchar, text ....So that >one can specify column types when model an entity (table)] and the error >msg (from EOModeler) > >SQLExecDirect in -[ODBCChannel evaluateExpression:(<ODBCSQLExpression: >"SELECT t0."pname", t0."person_id" FROM "person" t0 WHERE t0."pname" = ?" >withBindings:(1:Elim(pname))>)] >S1000-7: ERROR: column "elim" does not exist >(sorry I took the quotes around the column name 'pname' in my previous post) > >Means that somehow my matching value 'Elim' been interpreted as column >name!!! >since the same query works perfect with other kind of odbc data sources, i >guess >this really indicate that EOModeler and postgresql-odbc can not communicate >correctly. in other words, postgresql-odbc has special API's that not make >sense to >EOModeler. > > > >----- Original Message ----- >From: "Kevin Grittner" <Kevin.Grittner@wicourts.gov> >To: <elim@pdtnetworks.net>; <pgsql-bugs@postgresql.org> >Sent: Monday, August 01, 2005 8:25 AM >Subject: Re: [BUGS] problem odbc 8.0 with EOModeler > > >Is the column name "Elim" or "elim"? If the former, try putting quotes >around it, as required by the ANSI and ISO standards for mixed case >identifiers. Some database products fail to comply with the standards in >this respect. PostgreSQL comes close, although it treats unquoted >identifers as all lower case rather than all upper case as required by the >standards. > >-Kevin > > > > >>>>"YL" <elim@pdtnetworks.net> 07/30/05 3:48 PM >>> >>>> >>>> >I've used EOModeler with odbc for MS SQL Server, >MySQL and MS Access with no problem. But got >problem with postgre odbc driver. (the newest one) > >EOMOdeler cannot get postgresql column types' info >through odbc. Also, It cannot interact with EOModeler >for very simple query: > >SQLExecDirectin - [ODBCChannel evaluateExpression: >(<ODBCSQLExpression: "SELECT t0.pname,t0.person_id >FROM person t0 WHERE t0.pname = ? " withBindings: >(1:Elim(name)) >)] >S 1000-7: ERROR: column 'elim' doesnot exitst > >EOModeler is an app in WebObjects (www.apple.com) >I'm using version 4.5.1 ObjC. EOModeler has adaptors >for Oracle, Infomix, Sybase, Openbase. All works very >well. > >My guess is that postgresql-odbc has some non-standard >api and so EOModeler fails to work with it. > > > > > >
EOModeler is a GUI tool to model the database schema as well as the mapping between database records and EnterpriseObjects. The version I'm using comes with database adaptors for Oracle, Sybase,Informix,LDAp FlatFile,Openbase and ODBC. I've used EOModeler with many differenct databases including most of the above, plus SQL server , MySQL, Access (via ODBC). All worked very well. But PostgreSQL+pgsqlODBC8.0 not work properly with EOModeler. I can connect the database fine with EOModeler (can fetch all records in specified table within EOModeler), however, EOModeler cannot get the necessary info about PostgreSQL data types. Below are the comparison of responses between pgsql odbc 8.0 and myodbc 3.5 when EOModeler tries to get the meta info, which show that pgsql odbc reports nothing about the 'typeInfo' expected by EOModeler, while myodbc reports all 'typeInfo' (shown below). Consequently, EOModeler and related framework know nothing about how to talk to pgsql database properly. By manully editing the typeInfo that EOModeler obtained and saved (as a text file), EOModeler starts working with pgsql. My editing was based on some guess and the info from myodbc+mysql; which is not complete nor reliablel. can someone help me to get a complete typeInfo based one the following comparison? Thanks a lot. { EOModelVersion = 2.1; adaptorName = ODBC; connectionDictionary = { connectionString = "DSN=PostgreSQL;DATABASE=EPost;SERVER=localhost;PORT=5432;UID=postgres;PWD=* *****;ReadOnly=0;Protocol=6.4;FakeOidIndex=0;ShowOidColumn=0;RowVersioning=0 ;ShowSystemTables=0;ConnSettings=;Fetch=100;Socket=8192;UnknownSizes=0;MaxVa rcharSize=254;MaxLongVarcharSize=8190;Debug=0;CommLog=0;Optimizer=1;Ksqo=1;U seDeclareFetch=0;TextAsLongVarchar=1;UnknownsAsLongVarchar=0;BoolsAsChar=1;P arse=0;CancelAsFreeStmt=0;ExtraSysTablePrefixes=dd_;;LFConversion=1;Updatabl eCursors=0;DisallowPremature=0;TrueIsMinus1=0;BI=0;ByteaAsLongVarBinary=0;Us eServerSidePrepare=0"; driverInfo = { DBMS_NAME = PostgreSQL; DBMS_VER = "08.00.0100 PostgreSQL 8.0.3 on i686-pc-mingw32, compiled by GCC gcc.exe (GCC) 3.4.2 (mingw-sK\U0161\n2`\355\275"; DRIVER_NAME = PSQLODBC.DLL; DRIVER_ODBC_VER = 03.00; DRIVER_VER = 08.00.0100; EOF_ENABLE_SQLPUTDATA = Y; NON_NULLABLE_COLUMNS = Y; ODBC_API_CONFORMANCE = LEVEL1; ODBC_SQL_CONFORMANCE = CORE; SQL_FN_STR_UCASE = Y; SQL_IDENTIFIER_QUOTE_CHAR = "\""; SQL_ODBC_SQL_OPT_IEF = N; }; typeInfo = { }; }; entities = ({className = Person; name = Person; }); internalInfo = {}; } { EOModelVersion = 2.1; adaptorName = ODBC; connectionDictionary = { connectionString = "DSN=TypeGraphMySQL;DATABASE=TypeGraph;SERVER=localhost;UID=elim;PWD=******; PORT=;OPTION=0;STMT=;"; driverInfo = { DBMS_NAME = MySQL; DBMS_VER = "5.0.1-alpha-nt"; DRIVER_NAME = myodbc3.dll; DRIVER_ODBC_VER = 03.51; DRIVER_VER = 03.51.11; EOF_ENABLE_SQLPUTDATA = Y; NON_NULLABLE_COLUMNS = Y; ODBC_API_CONFORMANCE = LEVEL1; ODBC_SQL_CONFORMANCE = CORE; SQL_FN_STR_UCASE = Y; SQL_IDENTIFIER_QUOTE_CHAR = "`"; SQL_ODBC_SQL_OPT_IEF = N; }; typeInfo = { bigint = { createParams = 0; defaultODBCType = (BIGINT); isNullable = YES; isSearchable = YES; precision = 19; }; "bigint unsigned" = { createParams = 0; defaultODBCType = (BIGINT); isNullable = YES; isSearchable = YES; precision = 20; }; bit = { createParams = 0; defaultODBCType = (BIT); isNullable = YES; isSearchable = YES; precision = 1; }; blob = { createParams = 0; defaultODBCType = ("LONG VARBINARY"); isNullable = YES; isSearchable = YES; precision = 65535; }; char = { createParams = 1; defaultODBCType = (CHAR); isNullable = YES; isSearchable = YES; precision = 255; }; date = { createParams = 0; defaultODBCType = (DATE); isNullable = YES; isSearchable = YES; precision = 10; }; datetime = { createParams = 0; defaultODBCType = (TIMESTAMP); isNullable = YES; isSearchable = YES; maxScale = 0; minScale = 0; precision = 21; }; decimal = { createParams = 2; defaultODBCType = (DECIMAL); isNullable = YES; isSearchable = YES; maxScale = 19; minScale = 0; precision = 19; }; double = { createParams = 0; defaultODBCType = (FLOAT, DOUBLE); isNullable = YES; isSearchable = YES; maxScale = 4; minScale = 0; precision = 15; }; enum = { createParams = 0; defaultODBCType = (VARCHAR); isNullable = YES; isSearchable = YES; precision = 255; }; float = { createParams = 0; defaultODBCType = (REAL); isNullable = YES; isSearchable = NO; maxScale = 2; minScale = 0; precision = 7; }; int = { createParams = 0; defaultODBCType = (INTEGER); isNullable = YES; isSearchable = YES; precision = 10; }; "int unsigned" = { createParams = 0; defaultODBCType = (INTEGER); isNullable = YES; isSearchable = YES; precision = 10; }; integer = { createParams = 0; defaultODBCType = (INTEGER); isNullable = YES; isSearchable = YES; precision = 10; }; "integer unsigned" = { createParams = 0; defaultODBCType = (INTEGER); isNullable = YES; isSearchable = YES; precision = 10; }; "long varbinary" = { createParams = 0; defaultODBCType = ("LONG VARBINARY"); isNullable = YES; isSearchable = YES; precision = 16777215; }; "long varchar" = { createParams = 0; defaultODBCType = ("LONG VARCHAR"); isNullable = YES; isSearchable = YES; precision = 16777215; }; longblob = { createParams = 0; defaultODBCType = ("LONG VARBINARY"); isNullable = YES; isSearchable = YES; precision = 2147483647; }; mediumblob = { createParams = 0; defaultODBCType = ("LONG VARBINARY"); isNullable = YES; isSearchable = YES; precision = 16777215; }; mediumint = { createParams = 0; defaultODBCType = (INTEGER); isNullable = YES; isSearchable = YES; precision = 7; }; "mediumint unsigned" = { createParams = 0; defaultODBCType = (INTEGER); isNullable = YES; isSearchable = YES; precision = 8; }; mediumtext = { createParams = 0; defaultODBCType = ("LONG VARCHAR"); isNullable = YES; isSearchable = YES; precision = 16777215; }; numeric = { createParams = 2; defaultODBCType = (NUMERIC); isNullable = YES; isSearchable = YES; maxScale = 19; minScale = 0; precision = 19; }; set = { createParams = 0; defaultODBCType = (VARCHAR); isNullable = YES; isSearchable = YES; precision = 255; }; smallint = { createParams = 0; defaultODBCType = (SMALLINT); isNullable = YES; isSearchable = YES; precision = 5; }; "smallint unsigned" = { createParams = 0; defaultODBCType = (SMALLINT); isNullable = YES; isSearchable = YES; precision = 5; }; text = { createParams = 0; defaultODBCType = ("LONG VARCHAR", VARCHAR); isNullable = YES; isSearchable = YES; precision = 65535; }; time = { createParams = 0; defaultODBCType = (TIME); isNullable = YES; isSearchable = YES; precision = 6; }; timestamp = { createParams = 0; defaultODBCType = (TIMESTAMP); isNullable = NO; isSearchable = YES; maxScale = 0; minScale = 0; precision = 14; }; tinyblob = { createParams = 0; defaultODBCType = ("LONG VARBINARY"); isNullable = YES; isSearchable = YES; precision = 255; }; tinyint = { createParams = 0; defaultODBCType = (TINYINT); isNullable = YES; isSearchable = YES; precision = 3; }; "tinyint unsigned" = { createParams = 0; defaultODBCType = (TINYINT); isNullable = YES; isSearchable = YES; precision = 3; }; varchar = { createParams = 1; defaultODBCType = (VARCHAR); isNullable = YES; isSearchable = YES; precision = 255; }; year = { createParams = 0; defaultODBCType = (SMALLINT); isNullable = YES; isSearchable = YES; precision = 4; }; }; }; entities = ( {className = ERelation; name = ERelation; }, {className = EType; name = EType; } ); internalInfo = {}; }