On Friday, 6 February 2015 at 09:42:09 UTC, zhmt wrote:
class Card
{
        import hibernated.core;
        
        @Id
        @Generated
        long id;
        @UniqueKey
        string pwd;
}

        MySQLDriver driver = new MySQLDriver();
string url = MySQLDriver.generateUrl("10.211.55.10", 3306, "test"); string[string] params = MySQLDriver.setUserAndPassword("root", "xxx"); auto ds = new ConnectionPoolDataSourceImpl(driver, url, params);
        
        EntityMetaData schema = new SchemaInfoImpl!(Card);
        Dialect dialect = new MySQLDialect();
        auto factory = new SessionFactoryImpl(schema, dialect, ds);

        
        Card c = new Card;
        auto s = factory.openSession();
        scope(exit) s.close();
        s.save(c);


Here is the simplest example, but it complains the same error.
OK,
Before the call
"auto s = factory.openSession();"
Does de mysql db has a db called 'test' and a table called 'card' with columns named 'id' and 'pwd'? If not call:
"factory.getDBMetaData().updateDBSchema( conn, true, true );"
verify the table is created in mysql.
After create call:
"factory.openSession();"
...
If things are still failing take a look here:
https://github.com/buggins/hibernated/blob/master/hdtest/source/htestmain.d
This is a simple program testing some basic functions of hibernated. Try it with sqlite first after that add a mysql section and try again.

Reply via email to