A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://sidorares.github.io/node-mysql2/docs/examples/typescript/procedure-call/row-as-array below:

Procedure Call Packet (Row as Array)






import mysql, {
ConnectionOptions,
ProcedureCallPacket,
ResultSetHeader,
RowDataPacket,
} from 'mysql2/promise';

interface User extends RowDataPacket {

0: number;

1: string;
}

const isResultSetHeader = (data: unknown): data is ResultSetHeader => {
if (!data || typeof data !== 'object') return false;

const keys = [
'fieldCount',
'affectedRows',
'insertId',
'info',
'serverStatus',
'warningStatus',
'changedRows',
];

return keys.every((key) => key in data);
};

(async () => {
const access: ConnectionOptions = {
host: '',
user: '',
password: '',
database: '',
rowsAsArray: true,
};

const conn = await mysql.createConnection(access);


await conn.query<ResultSetHeader>('DROP TABLE IF EXISTS `users`;');


await conn.query<ResultSetHeader>(
'CREATE TABLE `users` (`id` INT(11) AUTO_INCREMENT, `name` VARCHAR(50), PRIMARY KEY (`id`));'
);


const [inserted] = await conn.execute<ResultSetHeader>(
'INSERT INTO `users`(`name`) VALUES(?), (?), (?), (?);',
['Josh', 'John', 'Marie', 'Gween']
);

console.log('Inserted:', inserted.affectedRows);


await conn.query<ResultSetHeader>('DROP PROCEDURE IF EXISTS getUsers');


await conn.query<ResultSetHeader>(`
CREATE PROCEDURE getUsers()
BEGIN
SELECT * FROM users ORDER BY name ASC;
END
`);


const [procedureResult] =
await conn.query<ProcedureCallPacket<User[]>>('CALL getUsers()');

procedureResult.forEach((users) => {

if (isResultSetHeader(users)) {
console.log('----------------');
console.log('Affected Rows:', users.affectedRows);
} else {
users.forEach((user) => {
console.log('----------------');
console.log('id: ', user[0]);
console.log('name:', user[1]);
});
}
});

await conn.end();
})();




















RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4