какая база? MS Server?
я обычно делаю такие вставки хранимой процедурой а-ля так:
---------
create procedure sp_TestInsert
@in_test1 int ,
@in_test2 int ,
@in_test3 varchar(50)
as
set nocount on
INSERT INTO TestTable(Test1 ,Test2 ,Test3)
VALUES(@in_test1,@in_test2,@in_test3)
select CAST (SCOPE_IDENTITY() as int) -- возврат Id
--------
правда э.. ни разу не пробовал из под пхп хранимые процедуры звать
пс что-то глюки с переводом строки какие-то если в тэг [sql] засовывать