BMS-HOSxP Community

HOSxP => นอกเรื่อง => ข้อความที่เริ่มโดย: นายเก่ง สสจ.ชัยนาท ที่ เมษายน 13, 2010, 10:22:25 AM

หัวข้อ: การเปลี่ยน พศ คศ ใน access
เริ่มหัวข้อโดย: นายเก่ง สสจ.ชัยนาท ที่ เมษายน 13, 2010, 10:22:25 AM
สอบถามท่านผู้รู้หน่อยครับ เนื่องจากข้อมุลใน Access ของผมในส่วนของวันเกิด มันเป็น พศ. พอไปนำเข้าใน database  ที่เป็น sql แล้ว มันผิด เช่น access เป็น 2514  พอเอาเข้าไปใน sql มันเป็น   3057  มันบวกเพิ่มเข้าไป 543 อ่ะครับ ซึ่งจริงๆแล้ว จะต้องแปลงใน access เป็น คศ ให้เรียบร้อยก่อน แล้วถึงนำเข้า  ผมจำไม่ได้วิธีทำเพราะ ใช้วิธีครูพักลักจำเอา  อ่านหนังสือเอาเองมั่ง ไม่ได้เรียนมาโดยตรง ไม่รู้ว่าจะต้องทำตรงไหนดี  ลองเอาข้อมูลไปนำเข้าใน excel แล้ว มันก็ได้อยู่ แต่มันมีข้อจำกัด เนื่องจากข้อมูลมันเยอะเกินกว่า excel จะรับได้  เลยต้องหันกลับมาที่ access ว่ามันต้องทำอย่างไรครับ  ฝากท่านอาจารย์ทั้งหลายช่วยบอกผู้ต่ำต้อยแต่มีความพยายามด้วยครับ วันหยุดก็มานั่งทำตรงนี้เพราะเงียบดีไม่มีใครกวน
หัวข้อ: Re: การเปลี่ยน พศ คศ ใน access
เริ่มหัวข้อโดย: doramon ที่ เมษายน 13, 2010, 10:39:05 AM
สอบถามท่านผู้รู้หน่อยครับ เนื่องจากข้อมุลใน Access ของผมในส่วนของวันเกิด มันเป็น พศ. พอไปนำเข้าใน database  ที่เป็น sql แล้ว มันผิด เช่น access เป็น 2514  พอเอาเข้าไปใน sql มันเป็น   3057  มันบวกเพิ่มเข้าไป 543 อ่ะครับ ซึ่งจริงๆแล้ว จะต้องแปลงใน access เป็น คศ ให้เรียบร้อยก่อน แล้วถึงนำเข้า  ผมจำไม่ได้วิธีทำเพราะ ใช้วิธีครูพักลักจำเอา  อ่านหนังสือเอาเองมั่ง ไม่ได้เรียนมาโดยตรง ไม่รู้ว่าจะต้องทำตรงไหนดี  ลองเอาข้อมูลไปนำเข้าใน excel แล้ว มันก็ได้อยู่ แต่มันมีข้อจำกัด เนื่องจากข้อมูลมันเยอะเกินกว่า excel จะรับได้  เลยต้องหันกลับมาที่ access ว่ามันต้องทำอย่างไรครับ  ฝากท่านอาจารย์ทั้งหลายช่วยบอกผู้ต่ำต้อยแต่มีความพยายามด้วยครับ วันหยุดก็มานั่งทำตรงนี้เพราะเงียบดีไม่มีใครกวน

access ต้องเป็นฟิว  date   

mysql  ต้องเป็นฟิว date เหมือนกัน  นำเข้าตรงๆๆ  ได้แน่นอนครับ


แต่ถ้า  ชนิดฟิวไม่เหมือนกัน  ต้องมาคุยกันแบบนี้

 :)
หัวข้อ: Re: การเปลี่ยน พศ คศ ใน access
เริ่มหัวข้อโดย: นายเก่ง สสจ.ชัยนาท ที่ เมษายน 13, 2010, 10:45:01 AM
สงสัย จะเป้นเช่นนั้นแน่เลย เนื่องจากข้อมูลในbirthdate มันเป็น text แต่ให้มันแสดงผลเป็น รูปแบบวันที่ แสดงว่าไม่ถูกใช่ปล่าวครับ ต้องจับแปลงเป็น date/time ก่อน ถูกต้องปล่าวครับ ถ้าถูกก็เป็นปัญหาใหม่คือ ทำยังไงอ่ะ ถ้าจับแปลงตรงๆ ข้อมุลมันจะหายอ่ะครับ ช่วยชี้แนะด้วยครับ
หัวข้อ: Re: การเปลี่ยน พศ คศ ใน access
เริ่มหัวข้อโดย: doramon ที่ เมษายน 13, 2010, 10:47:42 AM
สงสัย จะเป้นเช่นนั้นแน่เลย เนื่องจากข้อมูลในbirthdate มันเป็น text แต่ให้มันแสดงผลเป็น รูปแบบวันที่ แสดงว่าไม่ถูกใช่ปล่าวครับ ต้องจับแปลงเป็น date/time ก่อน ถูกต้องปล่าวครับ ถ้าถูกก็เป็นปัญหาใหม่คือ ทำยังไงอ่ะ ถ้าจับแปลงตรงๆ ข้อมุลมันจะหายอ่ะครับ ช่วยชี้แนะด้วยครับ

ส่งตังอย่างมาให้ดู  20  record

หัวข้อ: Re: การเปลี่ยน พศ คศ ใน access
เริ่มหัวข้อโดย: นายเก่ง สสจ.ชัยนาท ที่ เมษายน 13, 2010, 11:02:43 AM
ข้อมูลในAccess ประมาณนี้อ่ะครับ
หัวข้อ: Re: การเปลี่ยน พศ คศ ใน access
เริ่มหัวข้อโดย: doramon ที่ เมษายน 13, 2010, 11:16:55 AM
ข้อมูลในAccess ประมาณนี้อ่ะครับ

ขอถามเพิ่้มเติมครับ

จะทำข้อมูล อะไร ได้มาจากไหน

แล้วทำแล้วจะเอาไปทำอะไรครับ

ข้อมูลที่ได้มาแปลงได้ครับ

หัวข้อ: Re: การเปลี่ยน พศ คศ ใน access
เริ่มหัวข้อโดย: นายเก่ง สสจ.ชัยนาท ที่ เมษายน 13, 2010, 11:22:59 AM
คือ ผมทำระบบประกันสุขภาพ ของจังหวัดครับ โดยการนำข้อมุล dbpop แล้วแสดงผลบนเวป  ครับ ให้ทางพื้นที่ได้ดูครับ  ข้อมูลสามารถนำเข้าได้ทั้งหมด แต่ติดปัญหาตรงข้อมูลวันที่นี่แหละมันแสดผลผิด
หัวข้อ: Re: การเปลี่ยน พศ คศ ใน access
เริ่มหัวข้อโดย: doramon ที่ เมษายน 13, 2010, 11:27:31 AM
คือ ผมทำระบบประกันสุขภาพ ของจังหวัดครับ โดยการนำข้อมุล dbpop แล้วแสดงผลบนเวป  ครับ ให้ทางพื้นที่ได้ดูครับ  ข้อมูลสามารถนำเข้าได้ทั้งหมด แต่ติดปัญหาตรงข้อมูลวันที่นี่แหละมันแสดผลผิด

http://www.techonthenet.com/access/functions/string/mid.php

อันนี้ได้เลย

แต่ต้องคิดอีกนึดหนึง

เดียวไปกินข้าวก่อนแล้วจะมาทำให้ดู

 :)
หัวข้อ: Re: การเปลี่ยน พศ คศ ใน access
เริ่มหัวข้อโดย: นายเก่ง สสจ.ชัยนาท ที่ เมษายน 13, 2010, 11:30:44 AM
ขอบคุณคับ เดี๋ยวผมทานมาม่าคอยนะ ;D :D
หัวข้อ: Re: การเปลี่ยน พศ คศ ใน access
เริ่มหัวข้อโดย: doramon ที่ เมษายน 13, 2010, 11:39:30 AM
ขอบคุณคับ เดี๋ยวผมทานมาม่าคอยนะ ;D :D

ก่อนไปกินข้าว


SELECT xample.birthdate, Mid([birthdate],7,2)+"/"+Mid([birthdate],5,2)+"/"+Mid([birthdate],1,4) AS Expr1, Date() AS Expr2
FROM xample;
หัวข้อ: Re: การเปลี่ยน พศ คศ ใน access
เริ่มหัวข้อโดย: doramon ที่ เมษายน 13, 2010, 11:42:46 AM
กำหนดตังนี้เป็น พศ ด้วยนะครับ

(http://www.thaiall.com/teachaccess/a20031.gif)
หัวข้อ: Re: การเปลี่ยน พศ คศ ใน access
เริ่มหัวข้อโดย: นายเก่ง สสจ.ชัยนาท ที่ เมษายน 13, 2010, 14:25:42 PM
ลองทำตามแล้วผลปรากฎตามรูปครับ แต่ยังไม่เป็น คศ ครับ
หัวข้อ: Re: การเปลี่ยน พศ คศ ใน access
เริ่มหัวข้อโดย: นายเก่ง สสจ.ชัยนาท ที่ เมษายน 13, 2010, 16:39:18 PM
ผมเเปิดหาความรู้ใน google ดู ก็เลยลองใช้ function การตัดคำ ออกเป็น field ก้จะได้ เป็น field ปี เดือน วันแล้ว ในfield ก็นำไปลบ 543 ก็ okนะครับ ตอนนี้ จะรวม ไอ้ field 3 field ให้้เป็น วันที่ ที่เป็น คศ แล้ว ทำยังไงครับ ช่วยให้ความกระจ่างด้วยครับ  ติดนิดๆหน่อยๆ ตามประสาผู้ค้นคว้าด้วยตนเอง ไม่ได้เรียนพื้นฐาน
หัวข้อ: Re: การเปลี่ยน พศ คศ ใน access
เริ่มหัวข้อโดย: doramon ที่ เมษายน 13, 2010, 18:30:18 PM
SELECT xample.birthdate, Mid([birthdate],7,2)+"/"+Mid([birthdate],5,2)+"/"+Str(Int(Mid([birthdate],1,4))-543) AS Expr1, Date() AS Expr2
FROM xample;
หัวข้อ: Re: การเปลี่ยน พศ คศ ใน access
เริ่มหัวข้อโดย: นายเก่ง สสจ.ชัยนาท ที่ เมษายน 14, 2010, 09:45:15 AM
ขอบคุณครับ
หัวข้อ: Re: การเปลี่ยน พศ คศ ใน access
เริ่มหัวข้อโดย: icon_teams ที่ เมษายน 14, 2010, 11:24:04 AM
ถ้านำเข้าจาก Text  ไฟล์ แนะนำให้สร้างตาราง ใน access ขึ้นมาชุดหนึ่งครับ...แล้วโอนข้อมูลจาก text ไฟล์เข้า access เสร็จแล้ว ค่อยโอนจาก access ไป mysql สำหรับ..นำเข้าไฟล์วันเกิด รูปแบบ 25140120 แบบนี้ ปรับฟิลด์ใน query สำหรับ update ตามนี้ครับ

BD: Right([เขตข้อมูล5],2) & "/" & Mid([เขตข้อมูล5],5,2) & "/" & Left([เขตข้อมูล5],4)

สีแดงหมายถึงชื่อฟิลด์ของ text ไฟล์ครับ..ก็จะได้รูปแบบ เปลี่ยนมาเป็น 20/01/2514  :D ;D :D
หัวข้อ: Re: การเปลี่ยน พศ คศ ใน access
เริ่มหัวข้อโดย: Terminator2015 ที่ เมษายน 18, 2010, 14:23:46 PM
 ;) ใช้ตามท่าน icon_teams นี่ละครับผมใช้ประจำ แต่จะมีปัญหาอยู่นิดว่า จะมีบุคคลจำนวนหนึ่งที่รู้จักแต่ พ.ศ. ที่เกิดแต่ไม่รู้วันที่กับเดือน ถ้าเป็น text file ก็จะอยู่ในรูป 25250000  ลักษณะนี้ถ้าแปลงเป็นรูปแบบ date/time แล้วจะถูกลบทิ้ง ว่างเปล่าเลยนะครับ ฉะนั้นควรจะใช้คำสั่งนี้ก่อน ค่อยตามด้วยของท่าน Icon_teams

BD: Left([เขตข้อมูล5],4) & "0701"   
ก็จะได้ 25250701  (เปลี่ยนให้เป็น 1 กรกฏา กลางปี หรือเดือนอื่นๆ แล้วแต่ครับ)

แล้วค่อยตามด้วย


ก็จะได้ 2525/07/01  จากนั้นค่อยปรับเป็นรูปแบบ date/time  ครับ