Fatal Exception caught in MySqlSchemaRetriever

Posts   
 
    
PAZIMLI
User
Posts: 82
Joined: 01-May-2008
# Posted on: 03-Nov-2008 13:36:05   

llblgen Pro v2.5 MySql 5.0 Adapter C#.net 2005 Corelab MySql Version=4.25.22.0

llblgen designer can connect to the MySql but when i press the 'create' button i get the error below;

Fatal Exception caught in MySqlSchemaRetriever:: PopulateAllTableFields: Cannot find column [NON_UNIQUE]. Cannot find column [NON_UNIQUE].

Stack Trace of the error is;

-----[Core exception]-------------------- at SD.LLBLGen.Pro.DBDrivers.MySql.MySqlSchemaRetriever.PopulateAllTableFields(IDbConnection openConnection) in C:\Myprojects\VS.NET Projects\LLBLGen Pro v2.0\Drivers 2.5\MySql\MySqlSchemaRetriever.cs:line 340 at SD.LLBLGen.Pro.DBDrivers.MySql.MySqlSchemaRetriever.RetrieveSchema(String connectionString, IDBSchema schemaToRetrieve, SchemaFetchFlags fetchFlags) in C:\Myprojects\VS.NET Projects\LLBLGen Pro v2.0\Drivers 2.5\MySql\MySqlSchemaRetriever.cs:line 118 at SD.LLBLGen.Pro.DBDrivers.MySql.MySqlCatalogRetriever.RetrieveSchemas(String connectionString, IDBCatalog catalogToRetrieve, SchemaFetchFlags fetchFlags) in C:\Myprojects\VS.NET Projects\LLBLGen Pro v2.0\Drivers 2.5\MySql\MySqlCatalogRetriever.cs:line 71 at SD.LLBLGen.Pro.DBDrivers.MySql.MySqlDBDriver.PopulateSelectedCatalogs(Hashtable callBacks, Hashtable connectionElements, SchemaFetchFlags fetchFlags, Hashtable properties) in C:\Myprojects\VS.NET Projects\LLBLGen Pro v2.0\Drivers 2.5\MySql\MySqlDBDriver.cs:line 446 at SD.LLBLGen.Pro.Gui.Forms.NewProjectWizard.CreateNewProject() -----[InnerException]-------------------- at System.Data.NameNode.Bind(DataTable table, List1 list) at System.Data.BinaryNode.Bind(DataTable table, List1 list) at System.Data.BinaryNode.Bind(DataTable table, List`1 list) at System.Data.DataExpression.Bind(DataTable table) at System.Data.DataExpression..ctor(DataTable table, String expression, Type type) at System.Data.DataView..ctor(DataTable table, String RowFilter, String Sort, DataViewRowState RowState) at SD.LLBLGen.Pro.DBDrivers.MySql.MySqlSchemaRetriever.PopulateAllTableFields(IDbConnection openConnection) in C:\Myprojects\VS.NET Projects\LLBLGen Pro v2.0\Drivers 2.5\MySql\MySqlSchemaRetriever.cs:line 307

Source :

SD.LLBLGen.Pro.DBDrivers.MySqlDBDriver System.Data

Driver Version of llblgen is: 2.5.03102008

I even tried it on a database with one table i get the error, i am adding the create statement of the database.

CREATE DATABASE llblgen_test /*!40100 DEFAULT CHARACTER SET latin5 */;

DROP TABLE IF EXISTS llblgen_test.acenta; CREATE TABLE llblgen_test.acenta ( acenta_kodu decimal(4,0) NOT NULL, org_firma_kodu decimal(4,0) default NULL, cari_kodu varchar(20) default NULL, acenta_adi varchar(60) default NULL, aciklama varchar(512) default NULL, durumu char(1) default 'A', PRIMARY KEY (acenta_kodu), KEY fk_acenta_acenta_ca_cari_kar (org_firma_kodu,cari_kodu) ) ENGINE=InnoDB DEFAULT CHARSET=latin5;

Walaa avatar
Walaa
Support Team
Posts: 14950
Joined: 21-Aug-2005
# Posted on: 03-Nov-2008 15:58:57   

I'm not sure what the problem is, but just to be sure, have you checked the following thread: http://www.llblgen.com/TinyForum/Messages.aspx?ThreadID=9757

PAZIMLI
User
Posts: 82
Joined: 01-May-2008
# Posted on: 03-Nov-2008 16:54:06   

I think this thread is not about my problem because it is not about licencing i had licencing problems on core lab before but not now And also i am using CoreLab MySql version 4.25.22.0 no v.3.x

Otis avatar
Otis
LLBLGen Pro Team
Posts: 39614
Joined: 17-Aug-2003
# Posted on: 03-Nov-2008 19:21:46   

Are you sure your database is MYSQL v5.0 ? The query executed is: SHOW INDEX FROM tablename

this should produce a resultset with the column "NON_UNIQUE" and "KEY_NAME", could you check that for me, please?

Frans Bouma | Lead developer LLBLGen Pro
PAZIMLI
User
Posts: 82
Joined: 01-May-2008
# Posted on: 04-Nov-2008 21:48:10   

My Database is MySql 5.0.45-community-nt.

I don't know if i run a correct sql Statement as you want for the problem but

I tried to run a Sql Statement like;

SHOW INDEX FROM acenta

and it returns 3 lines like;

Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment acenta 0 PRIMARY 1 acenta_kodu A 0 BTREE acenta 1 fk_acenta_acenta_ca_cari_kar 1 org_firma_kodu A 0 YES BTREE acenta 1 fk_acenta_acenta_ca_cari_kar 2 cari_kodu A 0 YES BTREE

PAZIMLI
User
Posts: 82
Joined: 01-May-2008
# Posted on: 05-Nov-2008 08:35:04   

Hi, i think i solve the problem, it is about my regional and language settings, it was Turkish before and it did not work, but after i change it to English, it works and refreshes the catalog.

Otis avatar
Otis
LLBLGen Pro Team
Posts: 39614
Joined: 17-Aug-2003
# Posted on: 05-Nov-2008 09:50:30   

PAZIMLI wrote:

Hi, i think i solve the problem, it is about my regional and language settings, it was Turkish before and it did not work, but after i change it to English, it works and refreshes the catalog.

Odd... simple_smile Your query result shows a column 'Non_unique'. Very weird that MySql reports that the column is missing while it's there!

Frans Bouma | Lead developer LLBLGen Pro