เนื่องจากมีการคำนวณบางอย่างที่มีทศนิยมหลายตำแหน่ง
ซึ่งการทำงานรายงาน หรือทำเว็บหรือโปรแกรมที่เกี่ยวข้องนั้น
จำเป็นต้องศึกษา เรื่องของข้อมูลที่จะนำมาคำนวณเป็นอย่างดี
เพราะนั่นอาจจะเป็นจุดหนึ่งที่ทำให้ คุณต้องถูกฟ้องร้องทีหลังได้
หากไม่รอบคอบในครั้งนี้
การตัดตัวเลขทศนิยม มีการตัดอยู่สองแบบ
คือ ตัดแบบมีการปัดเศษ เช่น
1.7869 => ปัดให้เหลือสองตำแหน่ง => 1.79
หรือ ตัดแบบไม่สนใจทศนิยมตัวถัดไป เช่น
1.7869 => ปัดให้เหลือสองตำแหน่ง => 1.78
ทั้งสองกรณีมีโอกาสได้ใช้ทั้งนั้น
ซึ่ง mySQL มีความสามารถนี้อยู่เช่นกัน โดยการใช้ คำสั่งดังนี้
- ตัดแบบมีการปัดเศษ จะใช้ ROUND(X), ROUND(X,D)
ROUND(1.7869,2) => 1.79
- ตัดแบบไม่สนใจทศนิยมตัวถัดไป จะใช้ TRUNCATE(X,D)
TRUNCATE(1.7869,2) => 1.78
ขอให้โชคดีครับ ^ ^
ลิงค์เพิ่มเติมนะครับ :: Link1
Nov 27, 2008
Out of range value adjusted for column error!
หัวข้อนี้เกี่ยวข้องกับการแก้ปัญหากรณีที่ เราไปกำหนดให้ mySQL
ตรวจสอบชนิดข้อมูล รวมถึงขนาดข้อมูล ที่เปิดไว้ในตารางของฐานข้อมูล
ถ้าหาก ชนิดที่กรอก หรือกำหนดข้อมูลเกินที่ได้กำหนดไว้
mySQL ก็จะแจ้งเราให้รู้ดังข้อความประมาณนี้ (บรรทัดล่าง)
"Out of range value adjusted..."
มันเป็นเรื่องถูกต้องแล้วล่ะที่ mySQL ไม่ยอมให้เรา Insert Data
เพราะข้อมูลที่ถูกนำเข้่าไป อาจจะขาดหาย หรือไม่สมบูรณ์
ซึ่งน่าจะส่งผลเสียในภายหลังได้
แต่ทั้งนี้บางคนอยากจะเปิดให้ยอมให้กรอกข้อมูลเข้าไปได้
เราก็มีวิธีมาแนะนำ ดังนี้
เข้าไปแก้ไฟล์ my.ini ของ mySQL
โดยไปปิดคำสั่งเอาไว้ ลองเทียบดูกับคำสั่งด้านล่างนะครับ
--------------------------------
# Set the SQL mode to strict
#sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
--------------------------------
เมื่อ restart service mySQL ก็จะสามารถนำข้อมูลเ้จ้าปัญหาดังกล่าว เข้าสู่ตารางข้อมูลได้แล้ว ครับ ^ ^
ข้อมูลที่เกี่ยวข้อง ::
Link1
ตรวจสอบชนิดข้อมูล รวมถึงขนาดข้อมูล ที่เปิดไว้ในตารางของฐานข้อมูล
ถ้าหาก ชนิดที่กรอก หรือกำหนดข้อมูลเกินที่ได้กำหนดไว้
mySQL ก็จะแจ้งเราให้รู้ดังข้อความประมาณนี้ (บรรทัดล่าง)
"Out of range value adjusted..."
มันเป็นเรื่องถูกต้องแล้วล่ะที่ mySQL ไม่ยอมให้เรา Insert Data
เพราะข้อมูลที่ถูกนำเข้่าไป อาจจะขาดหาย หรือไม่สมบูรณ์
ซึ่งน่าจะส่งผลเสียในภายหลังได้
แต่ทั้งนี้บางคนอยากจะเปิดให้ยอมให้กรอกข้อมูลเข้าไปได้
เราก็มีวิธีมาแนะนำ ดังนี้
เข้าไปแก้ไฟล์ my.ini ของ mySQL
โดยไปปิดคำสั่งเอาไว้ ลองเทียบดูกับคำสั่งด้านล่างนะครับ
--------------------------------
# Set the SQL mode to strict
#sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
--------------------------------
เมื่อ restart service mySQL ก็จะสามารถนำข้อมูลเ้จ้าปัญหาดังกล่าว เข้าสู่ตารางข้อมูลได้แล้ว ครับ ^ ^
ข้อมูลที่เกี่ยวข้อง ::
Link1
กำหนดให้ mySQL อ่านภาษาไทยได้
หลายๆ คนที่เริ่มทำงานไปสักพัก ก็ต้องมีบ้างที่รู้สึกว่า
บางส่วนในงานเริ่มทำงานไม่ได้ดั่งใจ
สำหรับชาวไอที หรือบรรดาผู้พัฒนาโปรแกรมมือใหม่
ที่จำเป็นต้องติดต่อฐานข้อมูล เช่น PHP+mySQL หรือ JSP+mySQL
มักจะเริ่มต้นพัฒนาด้วยการติดตั้ง Appserv ซึ่งเป็นตัวที่รวมเครื่องมือ
ให้สามารถลงได้สะดวก คือลงเสร็จ ก็สามารถพัฒนาเว็บไซต์
ภาษา PHP กับ mySQL ได้ทันที โดยไม่จำเป็นต้องมีความรู้อะไรมากนัก
จริงอยู่ ที่ว่า Appserv มีประโยชน์ที่ทำให้เราสามารถเริ่มพัฒนางานได้เร็วขึ้น
แต่ถ้าหากได้ทำงานในองค์กร แล้วล่ะก็ทางเลือกที่จะใช้ Appserv นั้นดูจะไม่เหมาะนัก
ผู้เขียนเองแม้ยังเป็นเพียงผู้พัฒนาวัยละอ่อน แต่คาดว่า นี่อาจเป็นทางเลือกที่ดีกว่า ^ ^
อย่ากลัว! ที่จะเปลี่ยนแปลง
ความรู้ที่ใหม่ๆ บางครั้ง มันก็ได้มาพร้อมกับปัญหาที่ใหม่ๆ เหมือนกัน
เอาล่ะปัญหา แรกที่เราน่าจะพบกัน
คือปัญหาการแสดงผลภาษาไทยของ mySQL
สิ่งที่สังเกตได้ว่าเราเข้าข่ายที่ต้องแก้ไข mySQL ให้ภาษาไทยกลับมาอ่านออกเขียนได้กัน
อันดับแีรก เข้าไปหาไฟล์ ชื่อ my.ini หรือ my.cnf (Linux)
จากนั้น นำบรรทัดข้างล่าง ไปเทียบแล้ว เพิ่มเข้าไป
mySQL ของเรา เมื่อ restart service ก็จะสามารถอ่านภาษาไทยได้แล้ว ^ ^
---------------------------------------------
[mysqld]
skip-character-set-client-handshake
default-character-set=tis620
init_connect='SET collation_connection = tis620_thai_ci'
init_connect='SET NAMES tis620'
---------------------------------------------
หวังว่าคงจะทำได้กันนะครับ
บางส่วนในงานเริ่มทำงานไม่ได้ดั่งใจ
สำหรับชาวไอที หรือบรรดาผู้พัฒนาโปรแกรมมือใหม่
ที่จำเป็นต้องติดต่อฐานข้อมูล เช่น PHP+mySQL หรือ JSP+mySQL
มักจะเริ่มต้นพัฒนาด้วยการติดตั้ง Appserv ซึ่งเป็นตัวที่รวมเครื่องมือ
ให้สามารถลงได้สะดวก คือลงเสร็จ ก็สามารถพัฒนาเว็บไซต์
ภาษา PHP กับ mySQL ได้ทันที โดยไม่จำเป็นต้องมีความรู้อะไรมากนัก
จริงอยู่ ที่ว่า Appserv มีประโยชน์ที่ทำให้เราสามารถเริ่มพัฒนางานได้เร็วขึ้น
แต่ถ้าหากได้ทำงานในองค์กร แล้วล่ะก็ทางเลือกที่จะใช้ Appserv นั้นดูจะไม่เหมาะนัก
ผู้เขียนเองแม้ยังเป็นเพียงผู้พัฒนาวัยละอ่อน แต่คาดว่า นี่อาจเป็นทางเลือกที่ดีกว่า ^ ^
อย่ากลัว! ที่จะเปลี่ยนแปลง
ความรู้ที่ใหม่ๆ บางครั้ง มันก็ได้มาพร้อมกับปัญหาที่ใหม่ๆ เหมือนกัน
เอาล่ะปัญหา แรกที่เราน่าจะพบกัน
คือปัญหาการแสดงผลภาษาไทยของ mySQL
สิ่งที่สังเกตได้ว่าเราเข้าข่ายที่ต้องแก้ไข mySQL ให้ภาษาไทยกลับมาอ่านออกเขียนได้กัน
อันดับแีรก เข้าไปหาไฟล์ ชื่อ my.ini หรือ my.cnf (Linux)
จากนั้น นำบรรทัดข้างล่าง ไปเทียบแล้ว เพิ่มเข้าไป
mySQL ของเรา เมื่อ restart service ก็จะสามารถอ่านภาษาไทยได้แล้ว ^ ^
---------------------------------------------
[mysqld]
skip-character-set-client-handshake
default-character-set=tis620
init_connect='SET collation_connection = tis620_thai_ci'
init_connect='SET NAMES tis620'
---------------------------------------------
หวังว่าคงจะทำได้กันนะครับ
Oct 15, 2008
SQL Command ค้นหาทุกตารางที่มีคอลัมภ์ ที่เราต้องการ #2
จากบทความเก่าที่เคยได้เขียนไว้ รู้สึกว่าจะยังไม่ครอบคลุมนัก
จึงเขียนบทความเพื่อเพิ่มเติมรายละเอียดเข้ามาอีกนิดหน่อย
ของเก่าดูได้ที่
"SQL Command ค้นหาทุกตารางที่มีคอลัมภ์ ที่เราต้องการ"
จากของเดิมนั้น คำสั่งจะถูกนำไปค้นยังทุกๆ คอลัมภ์ที่มีในระบบ
ซึ่งถ้าหากต้องการค้นเจาะจงตารางข้อมูลก็ให้ใช้คำสั่งลักษณะนี้
-------------------------------------------------------------------------
select table_schema,table_name from
information_schema.columns where
column_name = 'FundID' and table_schema = 'dbFund';
-------------------------------------------------------------------------
อ่านเพิ่มเติมได้ที่
http://www.revealnet.com/newsletter-v6/0905_A.htm
จึงเขียนบทความเพื่อเพิ่มเติมรายละเอียดเข้ามาอีกนิดหน่อย
ของเก่าดูได้ที่
"SQL Command ค้นหาทุกตารางที่มีคอลัมภ์ ที่เราต้องการ"
จากของเดิมนั้น คำสั่งจะถูกนำไปค้นยังทุกๆ คอลัมภ์ที่มีในระบบ
ซึ่งถ้าหากต้องการค้นเจาะจงตารางข้อมูลก็ให้ใช้คำสั่งลักษณะนี้
-------------------------------------------------------------------------
select table_schema,table_name from
information_schema.columns where
column_name = 'FundID' and table_schema = 'dbFund';
-------------------------------------------------------------------------
อ่านเพิ่มเติมได้ที่
http://www.revealnet.com/newsletter-v6/0905_A.htm
Oct 6, 2008
Problem ASP include dynamic URL (#2)
ช่วงหลังมีคนหลังเกี่ยวกับ ASP Classic เข้ามาขอนำมาตอบที่นี่ล่ะกันนะครับ
Problem ASP include dynamic URL คืองานเขียน ครั้งก่อนที่ผมได้เคยเขียนไว้นะครับ (นานมากล่ะ)
ตัดบางส่วนของจดหมายมาดังนี้
-------------------------------------
ผมไม่เข้าใจโค๊ดพวกนี้เลยครับ ซึ่ง php มันทำง่ายมากเลย แค่ include($valFile) ก็จบแล้วน่ะครับ เช่นที่ผมเคยเขียนใน asp น่ะครับ
มันก็เป็นหลักการที่ง่ายๆ ไม่ได้ติดคอมเม้นในภาษา html
-------------------------------------
ตามที่เขียนมานั้น เข้าใจดีครับว่า ติดปัญหาอะไร และถามคำถามได้ดีแล้วครับ
เข้าใจว่าต้องการ ให้เขียน แบบเหมือนที่ยกตัวอย่างของ PHP มาให้ดู ลองเทียบกันดูนะครับ
เท่าที่เขียน ไปนี่ ยังไม่ค่อยจะมั่นใจ นะครับว่า ถูกหลักการไหม เพราะว่า ทิ้ง ASP Classic (VBscript) มาซักระยะแล้วครับ
Problem ASP include dynamic URL คืองานเขียน ครั้งก่อนที่ผมได้เคยเขียนไว้นะครับ (นานมากล่ะ)
ตัดบางส่วนของจดหมายมาดังนี้
-------------------------------------
ผมไม่เข้าใจโค๊ดพวกนี้เลยครับ ซึ่ง php มันทำง่ายมากเลย แค่ include($valFile) ก็จบแล้วน่ะครับ เช่นที่ผมเคยเขียนใน asp น่ะครับ
1: if(!$_SESSION["s_user"] and $page!="index_home.php"){
2: echo"<script language='Javascript'>
3: alert('! ส่วนนี้ถูกปิดใช้งาน กรุณา Login ก่อนเข้าใช้งาน !') 4: </script>";5: include("index_home.php");
6: }7: else{
8: include($page); 9: } มันก็เป็นหลักการที่ง่ายๆ ไม่ได้ติดคอมเม้นในภาษา html
-------------------------------------
ตามที่เขียนมานั้น เข้าใจดีครับว่า ติดปัญหาอะไร และถามคำถามได้ดีแล้วครับ
เข้าใจว่าต้องการ ให้เขียน แบบเหมือนที่ยกตัวอย่างของ PHP มาให้ดู ลองเทียบกันดูนะครับ
1:
2: dim filename3: filename = "index_home.php"
4:
5: If Session("s_user") <> "" && filename <> "index_home.asp" Then
6:
7: response.write "<sc ript="" language="Javascript">
8: alert('! ส่วนนี้ถูกปิดใช้งาน กรุณา Login ก่อนเข้าใช้งาน !')"9: <!--#include file="index_home.asp" -->
10:
11: Else12:
13: dim strFile, fso, fsoFile14: strFile = "upload/"& CStr(filename)
15:
16: If strFile <> "" Then
17:
18: set fso = createObject("Scripting.FileSystemObject")
19: set fsoFile = fso.openTextFile(Server.MapPath(strFile))20: response.write "" & fsoFile.readAll & ""
21: set fso = nothing 22: set fsoFile = nothing23:
24: End if
25:
26: End if
เท่าที่เขียน ไปนี่ ยังไม่ค่อยจะมั่นใจ นะครับว่า ถูกหลักการไหม เพราะว่า ทิ้ง ASP Classic (VBscript) มาซักระยะแล้วครับ
Subscribe to:
Posts (Atom)
Blog Comment
บทความที่ได้รับความนิยม
-
ราวสองปีก่อนผมและเพื่อนมีโอกาสเช่ารถมอเตอร์ไซค์เที่ยวที่อยุธยา ช่วงนั้นทุกอย่างยังดูดีและยังไม่เกิดเหตุการณ์น้ำท่วม ซึ่งถ้าต้องการดูก็หาจา...
-
เนื่องจากมีการคำนวณบางอย่างที่มีทศนิยมหลายตำแหน่ง ซึ่งการทำงานรายงาน หรือทำเว็บหรือโปรแกรมที่เกี่ยวข้องนั้น จำเป็นต้องศึกษา เรื่องของข้อมูลท...
-
วิธีการในเบื้องต้น ต้องทราบก่อนนะครับว่าระบบเราเป็นอย่างไร ของผมนั้น เป็น Huawei SmartAX MT880 จาก TT&T อยากให้กำหนดไว้ตามนี้นะครับ จากร...
-
งานว่าง ว่างงาน ได้เวลาของการ อัพเดต Blog ทริป เชียงคาน เกิดขึ้นไม่ได้เกี่ยวกับการตามหา นาธาน แต่อย่างใด แต่เกิดจากกระแส เสียงลือ เสียงเล่าอ...
-
ปัญหาที่ผมพบคือ Lenovo U460 ที่ผมพึ่งซื้อมาและลง Win7 มีอาการลดความสว่างของหน้าจอลงเอง ทำเอาผมรำคาญมาก คิดว่าหลายคนก็คงเคยพบปัญหานี้ ปัญหานี...
-
ก่อนจะไปยังส่วนอื่น ขอแนะนำสำหรับมือใหม่ที่ยังไม่รู้จัก Thunderbird Thunderbird เป็นโปรแกรมที่ใช้งานเกี่ยวกับการรับ E-mail ที่อยู่ใน Mail Se...
-
โดยปกติ ถ้าเราต้องการติดตั้งให้ มี Server ที่สามารถใช้รันภาษา PHP บนเครื่องได้ โดยทั่วไปนั้น สามารถใช้ Appserv ซึ่งเป็นโปรแกรมสำเร็จรูป เมื่...
-
เป็นครั้งแรกสำหรับผมที่จะมาเล่าประสบการณ์การท่องเที่ยว ในมุมมองของตัวเอง มีอะไรอยากแนะนำก็ได้เช่นเคย comment กันได้ที่ด้านล่าง ทริป เกาะช...
-
ใครบ้างที่ไม่รู้จัก Microsoft SQL SERVER 2005 อ่ะนั่นแน่ ก็คงต้องมีมั่งล่ะเนาะ ผมเองก็เคยเป็นคนไม่รู้จัก อีกเช่นกัน เพราะไปวิ่งเล่น พัฒนาโดย...
-
ทริปนี้ ออกเดินทางเมื่อ 2012/09/08 โดยรถส่วนตัว มีเพื่อนร่วมทริป ราวๆ แปดคนได้ เราออกเดินทางกันจริงๆ ราวๆ 10.00 AM บึ่งไปเรื่อยๆ ราวๆ สี...