2
後に自動でIDが生成されます。私はSlickの構文を使用してこれが可能であることを知っていますが、これは単純なSQLクエリを使用して可能ですか?以下のコードでは、-1の戻り値しか得られません。スリック/オラクルPLAIN SQLは、私は、Oracle DBにレコードを挿入し、自動結果としてIDを生成し返しますScalaではスリックを経由してクエリを実行しようとしています挿入
val name = "Bob"
db.run(sql"""DECLARE NEW_PERSON_ID;
BEGIN
INSERT INTO TB_PEOPLE (ID, NAME)
VALUES(SEQ_PEOPLE.NEXTVAL, $name)
RETURNING ID INTO NEW_PERSON_ID;
END;""".as[Int])
私はそれがあなたのOracle構文からのより多くの問題だと思う、アッティラからの回答を確認してください[ここ](http://stackoverflow.com/questions/34811283/retrieve-oracle-last-inserted-identity) –
パート問題の 'declare new_person_id'がデータ型(たぶん' tb_people.id%type')を欠いているので、ブロックがコンパイルに失敗し、おそらく-1が与えられます。しかし、それを修正することは、呼び出し元に何も返されません(そして私はScalaを知らない)。 –