بزرگترین تفریح برای من یادگیری هست.
10. استفاده از MySql در Node.JS
خب بنظرم یکم گنگ بود دو روز قبلی و خیلی یهویی از React وارد Node شدیم. حالا چند قدمی میریم عقب تر ، اگر حس کردید دو روز قبلی رو کامل متوجه نشدید ، اشکالی نداری بعد از خوندن این درس میتونید اونا رو مجددا بخونید.
اول کار که با Express یه پروژه Node ساختیم ، یک فایل به اسم App.js درست کردیم و از پورت 8000.
خب امروز میخوایم بیایم و یک دیتابیس درست کنیم و باهاش ارتباط بگیریم. نمیدونم چرا این آموزش های توی اینترنت اینقدر قضیه رو پیچیده میکنن! مطلب به این سادگی رو .
قدم اول : نصب mysql در ترمینال با دستور زیر mysql رو نصب کنید:(توجه کنید این کارهای توی API هست)
npm install mysql
قدم دوم : تعریف کردن Connection با دیتابیس
var mysql = require('mysql');
var con = mysql.createConnection({
host: 'localhost',
user: 'root',
password: '123456',
database: 'clients'
})
گفتم ارتباط با دیتابیس؟ ولی ما که هنوز دیتابیسی نساختیم :))) راستش قرار نیست در این باره زیاد بحث کنم ، فقط محض کامل بود سریع میگم و رد میشم ( مشکلی بود دیگه زحمت سرچ در اون زمینه رو باید بکشید)
قدم یک و نیم: اول نرم افزار Xampp رو نصب میکنید( یه سرور لوکال هست) . بعد سرویس Apach و MySql رو ران میکنید و بعد وارد Admin بخش mySql میشید( که در واقع برنامه phpmyadmin هست).
یک Table می سازم به اسم siteusers با چهارتا ستون دلخواه
بعد میرم تو بخش UserAccount و رمز Root رو عوض میکنیم. یه نکته اینکه رمز رو که عوض کردید بعد باید برید توی مسیر نصب phpmyadmin و فایل config رو پیدا کنید و رمز رو توی اون فایل وارد کنید.
قدم سوم: برقراری ارتباط با دیتابیس:
con.connect(function(err){
if(err) throw err;
console.log('Connected!');
})
بعد از ران کردن برنامه باید ارتباط به درستی برقرار بشه و مشکلی نداشته باشید.
قدم چهارم: حالا نوبت این میشه که عملیات های مورد نظرمون رو در دیتابس انجام بدیم. شامل Insert و Select و... برای اینکار نیاز به Query یا همون دستورالعمل های دیتابیس داریم که چهارتا هستند و تعریفشون میکنیم:
var insertSql="INSERT INTO `siteusers`(`Name`, `Email`, `Age`, `Password`) VALUES (?)"
قدم پنجم: اجرای Query:
const values = [ ['amir' , '12345'] ]
con.query( insertSql , values , function ( err , result ) {
if ( err ) throw err ;
console.log ( result );
})
حالا ما اینجا به صورت دستی اطلاعات رو وارد کردیم ، اما بعدا این اطلاعات رو از فرمی جایی دریافت میکنیم. با ران کردن برنامه اطلاعات متغییر Var توی دیتابیس ذخیره میشه و نتیجه برگشتی از دیتابیس هم برامون به نمایش گذاشته میشه.
خب Query بعدی که Select باشه رو هم انتخاب میکنیم که کل دیتابیس رو بهمون نشون بده.
var selectSql="SELECT `Name`, `Email`, `Age`, `Password` FROM `siteusers` WHERE 1"
con.query(insertSql,values,function(err,result){
if(err) throw err;
console.log(result);
con.query(selectSql,function(err,result){
if(err) throw err;
console.log(result);
})
})
اجرای کوئیری Select رو داخل کال بک نوشتم که دیگه وقتی بدون خطا کار Insert رو انجام داد بیاد سراغ نمایش دیتابیس.
خب خسته نباشید ، با موفقیت اطلاعات رو توی دیتابیس ذخیره کردید و نمایش هم دادیم.
تو قسمت بعدی بریم یک فرم درست کنیم و اطلاعات رو از مرورگر Post کنیم به API و از اونجا هم به دیتابیس.
مطلبی دیگر از این انتشارات
8. راه اندازی سرور با Express
مطلبی دیگر از این انتشارات
9. ارتباط برنامه React با Express
مطلبی دیگر از این انتشارات
2. آشنایی با Props در React