[SQL] นำเข้ารหัสยามาตรฐาน 24 หลักจากไฟล์ Exel
เมื่อไม่นานมานี้ สสจ. ขอฐานข้อมูลยาไป เพื่อที่จะ map รหัสยามาตรฐาน 24 หลัก
หลักจาก map เสร็จก็ได้ไฟล์ Exel มาโดยมี icode (รหัสยาของ รพ.) และ did (รหัสยามาตรฐาน) และข้อมูลอื่น ๆ
ที่สำคัญคือ สองฟิลนี้คือ icode และ did จะต้อง update did ลงไปในฐานข้อมูลยาตาม icode
ปัญหาก็คือจะเอาลงไปยังไงดี (โปรแกรม map ยังไม่ได้) ก็เลยคิดไปคิดมา เอา php เขียนแยกข้อมูลออกมาใส่ตาราง tempreport
แล้วเอา SQL update did อีกที อาจจะไม่ใช่วิธีที่ดี แต่มันก็อัพเดทได้โดยไม่มึนกับ code อิอิ
Code PHP
<?
$strFileName = "drug_import.csv";
$objFopen = fopen($strFileName, 'r');
mysql_connect(localhost,"user","password");
if ($objFopen) {
while (!feof($objFopen)) {
$file = fgets($objFopen, 4096);
$drug_code=substr($file,0,7);
$drug_did=substr($file,8,50);
echo $drug_code." - ".$drug_did.":::::";
$sql = "insert into hos.tempreport (reportname,name1,name2) VALUES('drug_item_import','$drug_code','$drug_did')";
if (mysql_query($sql))
{
echo "Insert OK <br>";
}
}
fclose($objFopen);
}
?>
Code SQL update drugitems di inner join tempreport tr on tr.name1=di.icode set di.did = tr.name2 where tr.reportname="drug_item_import"
Tags: DID, HosXP, icode, SQL, รหัสยามาตรฐาน