1
我能够在Oracle数据库中生成表,但它们是在默认表空间上生成的。NHibernate,Oracle和表空间
有谁知道如何指定哪些表空间,他们应该使用NHibernate(或您最喜欢的流利的映射API)创建?
如果我手动创建表(指定创建上的表空间),我可以随后通过NHibernate和我的C#代码将数据插入到它们中。
通过NHibernate的生成表,然后尝试插入数据,我得到以下错误:
NHibernate.Exceptions.GenericADOException: could not insert: [Some.Namespace.Core.MyObjectTable#fba3213d-bf7d-11e1-b71d-005056a80403][SQL: INSERT INTO "MyObjectTable" (Col1, Col2, Col3) VALUES (?, ?, ?)]
随着内部异常:
System.Data.OracleClient.OracleException: ORA-01950: no privileges on tablespace 'THE_DEFAULT_TABLESPACE'
肯定有解决的办法.. 。?我没有SQL Server的这种问题。
谢谢您的回答家伙,但我真的希望能够自动生成在给定的表空间中的表,然后将数据插入其中。相反,代码目前在默认表空间上创建了我没有特权的表。如果我通过SQL脚本手动创建表格,然后尝试通过NHibernate插入数据,一切工作正常。但是这打破了ORM的观点。 –
然后,你需要在创建表格时指定表空间 – steve
这是原始问题。但让我更具体(我会稍微编辑问题...)。我需要在NHibernate中指定表空间,但迄今为止所有的尝试都没有结果。 –