jonpryor / dblinq2007

Automatically exported from code.google.com/p/dblinq2007
0 stars 0 forks source link

sqlmetal errors with generating dbml on sqlite that has foreign key in the schema #284

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. create a sqlite database and add two tables like this:

CREATE TABLE "user" ( "uid" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" 
TEXT NOT NULL );
CREATE TABLE "bridge" ( "pkey" INTEGER NOT NULL, "rkey" INTEGER NOT NULL, 
"location" TEXT, PRIMARY KEY (pkey), CONSTRAINT "fk_bridge" FOREIGN KEY (rkey) 
REFERENCES user(uid));

2. Create a DBML file using sqlmetal on linux running the following command 
below.  I am using Ubuntu Lucid.  I named my database MySampleDB.sq3.

$ sqlmetal /provider=Sqlite /conn "Data Source=./MySampleDb.sq3" 
/database=MySampleDb /dbml=mysampledb.dbml

What is the expected output? What do you see instead?

My expected output should be a DBML file with the correct table associations.  
But this is what I get instead and no dbml file is generated.

DbLinq Database mapping generator 2008 version 0.20 for Microsoft (R) .NET 
Framework version 3.5 Distributed under the MIT license 
(http://linq.to/db/license)

>>> Reading schema from SQLite database sqlmetal: The given key was not present 
in the dictionary. 

What version of the product are you using? On what operating system?
Version 0.20 on Ubuntu Linux Lucid (10.04.1)

Please provide any additional information below.

Original issue reported on code.google.com by ellory...@dasarchitekt.com on 21 Sep 2010 at 8:47