最近在項目中需要連接數據庫,做增刪改查的功能,sql語句整理做了以下記錄(基於NodeJs,注:data為你的真實數據):
(一)新增插入表中數據:
sql: 'insert into work(表名) (name,id,src) values(?,?,?);', values: [ //需要插入的對應屬性 data.name, data.id,
data.src, ],
/******example******/
insertWorkList = async (data) => {
return new Promise((resolved, reject) => {
connection.query({
sql: 'insert into work(表名) (name,id,src) values(?,?,?);',
values: [
data.name,
data.id,
data.src,
],
}, (error, results) => {
if (error) {
reject(error);
} else {
resolved(results);
}
});
});
};
(二)更新表中數據(更新數據需要根據對應的唯一屬性,例如id):
sql: 'update work(表名) set name=?, src=? where id=?', values: [ //需要插入的對應屬性 data.name, data.src, data.id, //通過此id去更改name和src ],
/******example******/
updateWorkById = async (data) => {
return new Promise((resolved, reject) => {
connection.query({
sql: 'update work(表名) set name=?, src=? where id=?',
values: [
data.name,
data.src,
data.id,
],
}, (error, results) => {
if (error) {
reject(error);
} else {
resolved(results);
}
});
});
};
(三)查詢表中的數據:
(1)查詢某個表單中所有的數據(注: 查詢所有數據不用傳輸values值)
select * from work(表名)
/******example******/
getList = async () => {
return new Promise((resolved, reject) => {
connection.query('select * from work', (error, results) => {
if (error) {
reject(error);
} else {
resolved(results);
}
});
});
};
(2)通過id或其他唯一屬性查詢某個表單中的數據
sql: 'select * from work where id=?',
values: [id],
/******example******/
getWorkById = async (id) => {
return new Promise((resolved, reject) => {
connection.query({
sql: 'select * from work(表名) where id=?',
values: [id],
}, (error, results) => {
if (error) {
reject(error);
} else {
resolved(results);
}
});
});
};
(四)刪除表中id或其他唯一屬性對應的數據:
sql: 'delete from work where id=?', values: [id], /******example******/ deleteWorkById = async (id) => { return new Promise((resolved, reject) => { connection.query({ sql: 'delete from work(表名) where id=?', values: [id], }, (error, results) => { if (error) { reject(error); } else { resolved(results); } }); }); };