longbow0 wrote: > 谢谢! > > 现在还只是囫囵吞枣的读文档,希望能够早日掌握。
嗯,看文档 + 动手才是好的学习方法。 > > 想请教一个关于 Transaction 的问题,在 DBIx::Class::Manual::Cookbook 中的 > Transactions 一节 > (http://search.cpan.org/~frew/DBIx-Class-0.08115/lib/DBIx/Class/Manual > /Cookbook.pod#TRANSACTIONS),以及参照 DBIx::Class::Schema 和 > DBIx::Class::Storage, 是否是推荐在连接时设定 AutoCommit => 1 ,并且使用 > txn_do 方法,而不用 txn_begin/txn_commit/txn_rollback? > 对,AutoCommit => 1 然后 update, create, delete 的时候在使用 txn_do > 如果用 txn_do,是否应该把全部的语句写到一个 子进程 里,然后把这个子进程 > 的引用传给 txn_do;如果出错,txn_do 自动 rollback 并抛出异常? > 嗯,这个 DBIC 的文档里例子写的很清楚。 txn_do( sub { do_delete_or_whatever } ); > 如果涉及多个表的操作,是否可以放到同一个子进程中? > 应该是。 > 还有 如何 获得一个刚插入的行的 id?在 DBIx::Class::Storage 中有 > last_insert_id 方法,是否可以直接调用?我碰到的问题是,表 B 的一个字段是 > 表 A 的主键,我应该怎么插入这个字段? > DBIC 的 create() 语句自动返回刚插入的 id > 多谢! > > > longbow > > Qiang > > Qiang (James) wrote: >> longbow0 wrote: >> >>> 各位: >>> >>> 感觉 DBIx::Class::Schema 太复杂了,看了 POD 文档总是没法入门。 >>> >>> 有没有比较详细的教程? >>> >> Fayland 写了一个教程 >> http://search.cpan.org/~fayland/Book-Chinese-MasterPerlToday-0.02/lib/Book/Chinese/MasterPerlToday/DBIx-Class.pod >> >> >>> 个人感觉虽然是 Perl 风格操作数据库,但是与 SQL 语句比确实太不直观了。尤 >>> 其是 foreign key 和 relationship. >>> >>> >> 我一直都在使用,Relationship 可能需要点时间来学习下,其他的我感觉都还可以。 >> >> DBIC::Class 文档里的例子不少,多试试,碰到具体问题你可以再来问。 >> >> Qiang -- 您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。 要向此网上论坛发帖,请发送电子邮件至 [email protected]。 要取消订阅此网上论坛,请发送电子邮件至 [email protected]。 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
