vercel sql record example does not return "rows"
Unanswered
Spectacled Caiman posted this in #help-forum
Spectacled CaimanOP
import { sql } from '@vercel/postgres';
import { redirect } from 'next/navigation';
async function create(formData: FormData) {
'use server';
const { rows } = await sql
redirect(
}
export default function Page() {
return (
<form action={create}>
<input type="text" name="name" />
<button type="submit">Submit</button>
</form>
);
}
import { redirect } from 'next/navigation';
async function create(formData: FormData) {
'use server';
const { rows } = await sql
INSERT INTO products (name)
VALUES (${formData.get('name')});redirect(
/product/${rows[0].slug});}
export default function Page() {
return (
<form action={create}>
<input type="text" name="name" />
<button type="submit">Submit</button>
</form>
);
}
2 Replies
Spectacled CaimanOP
It returns "undefined"
@Spectacled Caiman import { sql } from '@vercel/postgres';
import { redirect } from 'next/navigation';
async function create(formData: FormData) {
'use server';
const { rows } = await sql`
INSERT INTO products (name)
VALUES (${formData.get('name')})
`;
redirect(`/product/${rows[0].slug}`);
}
export default function Page() {
return (
<form action={create}>
<input type="text" name="name" />
<button type="submit">Submit</button>
</form>
);
}
try
const { rows } = await sql
INSERT INTO products (name)
VALUES (${formData.get('name')})
RETURNING *
;