หน้าเว็บ

วันจันทร์ที่ 2 กุมภาพันธ์ พ.ศ. 2558

ชนิดข้อมูลใน MySQL

     

ชนิดข้อมูลใน MYSQL



     VARCHAR : สำหรับเก็บข้อมูลประเภทตัวอักษร ทุกครั้งที่เลือกชนิดของฟิลด์เป็นประเภทนี้ จะต้องมี การกำหนดความยาวของข้อมูลลงไปด้วย ซึ่งสามารถกำหนดค่าได้ตั้งแต่ 1 - 255 ฟิลด์ชนิดนี้ เหมาะสำหรับการเก็บข้อมูลสั้นๆ เช่น ชื่อ นามสกุล หรือหัวข้อต่างๆ เป็นต้น  

     CHAR : สำหรับเก็บข้อมูลประเภทตัวอักษร แบบที่ถูกจำกัดความกว้างเอาไว้คือ 255 ตัวอักษร  ไม่สามารถปรับเปลี่ยนได้เหมือนกับ VARCHAR หากทำการสืบค้นโดยเรียงตามลำดับ ก็จะเรียงข้อมูลแบบ case-sensitive เว้นแต่จะกำหนดแอตทริบิวต์เป็น BINARY ที่จะทำให้การเรียงข้อมูลเป็นแบบ non case-sensitive เช่นเดียวกับ VARCHAR

     TINYTEXT : ในกรณีที่ข้อความยาวๆ หรือต้องการที่จะค้นหาข้อความ โดยอาศัยฟีเจอร์ FULL TEXT SEARCH ของ MySQL เราอาจจะเลือกที่จะไม่เก็บข้อมูลลงในฟิลด์ประเภท VARCHAR ที่มีข้อจำกัดแค่ 256 ตัวอักษร แต่เราจะเก็บลงฟิลด์ประเภท TEXT แทน โดย TINYTEXT นี้ จะสามารถเก็บข้อมูล ได้ 256 ตัวอักษร ซึ่งมองเผินๆ ก็ไม่ต่างกับเก็บลงฟิลด์ประเภท CHAR หรือ VARCHAR(255) เลย แต่จริงๆ มันต่างกันตรงที่ มันทำFULL TEXT SEARCH ได้

      TEXT : สำหรับเก็บข้อมูลประเภทตัวอักษร เช่นเดียวกับ TINYTEXT แต่สามารถเก็บได้มากขึ้น โดย สูงสุดคือ 65,535 ตัวอักษร หรือ 64KB เหมาะสำหรับเก็บข้อมูลพวกเนื้อหาต่างๆ ที่ยาวๆ 

     MEDIUMTEXT : เก็บข้อมูลประเภทตัวอักษร เช่นเดียวกับ TINYTEXT แต่เก็บข้อมูลได้ 16,777,215 ตัวอักษร

     LONGTEXT : เก็บข้อมูลประเภทตัวอักษร เช่นเดียวกับ TINYTEXT แต่เก็บข้อมูลได้ 4,294,967,295 ตัวอักษร

     TINYINT : สำหรับเก็บข้อมูลชนิดตัวเลขที่มีขนาด 8 บิต ข้อมูลประเภทนี้เราสามารถกำหนดเพิ่มเติม ในส่วนของ "แอตทริบิวต์" ได้ว่าจะเลือกเป็น UNSIGNED หรือ UNSIGNED ZEROFILL โดยจะมี ความแตกต่างดังนี้
      - UNSIGNED : จะหมายถึงเก็บค่าตัวเลขแบบไม่มีเครื่องหมาย แบบนี้จะทำใหสามารถเก็บค่าได้ ตั้งแต่ 0 - 255
      - UNSIGNED ZEROFILL : เหมือนข้างต้น แต่ว่าหากข้อมูลที่กรอกเข้ามาไม่ครบตามจำนวน หลักที่เรากำหนด ตัว MySQL จะทำการเติม 0 ให้ครบหลักเอง เช่น ถ้ากำหนดให้ใส่ได้ 3 หลัก แล้วทำการเก็บข้อมูล 25 เข้าไป เวลาที่สืบค้นดู เราจะได้ค่าออกมาเป็น 025 หากไม่เลือก "แอ ตทริบิวต์" สิ่งที่เราจะได้ก็คือ SIGNED นั่นก็คือต้องเสียบิตนึงไปเก็บเครื่องหมาย บวก/ลบ ทำ ให้สามารถเก็บข้อมูลได้อยู่ในช่วง -128 ถึง 127 เท่านั้น

     SMALLINT : สำหรับเก็บข้อมูลประเภทตัวเลขที่มีขนาด 16 บิต จึงสามารถเก็บค่าได้ตั้งแต่ -32768 ถึง 32767 (ในกรณีแบบคิดเครื่องหมาย) หรือ 0 ถึง 65535 (ในกรณี UNSIGNED หรือไม่คิดเครื่องหมาย)ซึ่งสามารถเลือก Attribute เป็น UNSIGNED และ UNSIGNED ZEROFILL ได้เช่นเดียวกับ TINYINT

     MEDIUMINT : สำหรับเก็บข้อมูลประเภทตัวเลขที่มีขนาด 24 บิต นั่นก็หมายความว่าสามารถเก็บ ข้อมูลตัวเลขได้ตั้งแต่ -8388608 ไปจนถึง 8388607 (ในกรณีแบบคิดเครื่องหมาย) หรือ 0 ถึง 16777215(ในกรณีที่เป็น UNSIGNED หรือไม่คิดเครื่องหมาย) ซึ่งสามารถเลือก Attribute เป็น UNSIGNED และ UNSIGNED ZEROFILL ได้เช่นเดียวกับ TINYINT

      INT : สำหรับเก็บข้อมูลประเภทตัวเลขที่มีขนาด 32 บิต หรือสามารถเก็บข้อมูลได้ตั้งแต่ -2147483648 ไปจนถึง 2147483647 ครับ (ในกรณีแบบคิดเครื่องหมาย) หรือ 0 ถึง 4294967295 (ในกรณีที่เป็น UNSIGNED หรือไม่คิดเครื่องหมาย) ซึ่งสามารถเลือก Attribute เป็น UNSIGNED และ UNSIGNED ZEROFILL ได้เช่นเดียวกับ TINYINT 

     BIGINT : สำหรับเก็บข้อมูลประเภทตัวเลขที่มีขนาด 64 บิต สามารถเก็บข้อมูลได้ตั้งแต่ -9223372036854775808 ไปจนถึง 9223372036854775807 เลยทีเดียว (แบบคิดเครื่องหมาย) หรือ 0 ถึง 18446744073709551615 (ในกรณีที่เป็น UNSIGNED หรือไม่คิดเครื่องหมาย) ซึ่งสามารถเลือก Attribute เป็น UNSIGNED และ UNSIGNED ZEROFILL ได้เช่นเดียวกับ TINYINT 

     FLOAT[(M,D)] : ที่กล่าวถึงไปทั้งหมด ในตระกูล INT นั้นจะเป็นเลขจำนวนเต็ม หากเราบันทึกข้อมูล ที่มีเศษทศนิยม มันจะถูกปัดทันที ดังนั้นหากต้องการจะเก็บค่าที่เป็นเลขทศนิยม ต้องเลือกชนิดขอฟิลด์ เป็น FLOAT โดยจะเก็บข้อมูลแบบ 32 บิต คือมีค่าตั้งแต่ -3.402823466E+38 ไปจนถึง -1.175494351E- 38, 0 และ 1.175494351E-38 ถึง 3.402823466E+38

     DOUBLE[(M,D)] : สำหรับเก็บข้อมูลประเภทตัวเลขทศนิยม เช่นเดียวกับ FLOAT แต่มีขนาดเป็น 64 บิต สามารถเก็บได้ตั้งแต่ -1.7976931348623157E+308 ถึง -2.2250738585072014E-308, 0 และ
2.2250738585072014E-308 ถึง 1.7976931348623157E+308

     DECIMAL[(M,D)] : สำหรับเก็บข้อมูลประเภทตัวเลขทศนิยม เช่นเดียวกับ FLOAT แต่ใช้กับข้อมูลที่ ต้องการความละเอียดและถูกต้องของข้อมูลสูง ข้อสังเกต เกี่ยวกับข้อมูลประเภท FLOAT, DOUBLE และ DECIMAL ก็คือ เวลากำหนดความ ยาวของข้อมูลในฟิลด์ จะถูกกำหนดอยู่ในรูปแบบ (M,D) ซึ่งหมายความว่า ต้องมีการระบุว่า จะให้มี ตัวเลขส่วนที่เป็นจำนวนเต็มกี่หลัก และมีเลขทศนิยมกี่หลัก เช่น ถ้าเรากำหนดว่า FLOAT(5,2) จะ หมายความว่า เราจะเก็บข้อมูลเป็นตัวเลขจำนวนเต็ม 5 หลัก และทศนิยม 2 หลัก ดังนั้นหากทำการใส่ ข้อมูล 12345.6789 เข้าไป สิ่งที่จะเข้าไปอยู่ในข้อมูลจริงๆ ก็คือ 12345.68 (ปัดเศษให้มีจำนวนหลัก ตามที่กำหนดไว้)

      DATE : สำหรับเก็บข้อมูลประเภทวันที่ โดยเก็บได้จาก 1 มกราคม ค.ศ. 1000 ถึง 31 ธันวาคม ค.ศ. 9999 โดยจะแสดงผลในรูปแบบ YYYY-MM-DD

      DATETIME : สำหรับเก็บข้อมูลประเภทวันที่ และเวลา โดยจะเก็บได้ตั้งแต่ 1 มกราคม ค.ศ. 1000 เวลา 00:00:00 ไปจนถึง 31 ธันวาคม ค.ศ. 9999 เวลา 23:59:59 โดยรูปแบบการแสดงผล เวลาที่ทำการสืบค้น
(query) ออกมา จะเป็น YYYY-MM-DD HH:MM:SS 

      TIMESTAMP[(M)] : สำหรับเก็บข้อมูลประเภทวันที่ และเวลาเช่นกัน แต่จะเก็บในรูปแบบของ YYYYMMDDHHMMSS หรือ YMMDDHHMMSS หรือ YYYYMMDD หรือ YYMMDD แล้วแต่ ว่าจะระบุค่า M เป็น 14, 12, 8 หรือ 6 ตามลำดับ สามารถเก็บได้ตั้งแต่วันที่ 1 มกราคม ค.ศ. 1000 ไป จนถึงประมาณปี ค.ศ. 2037 

       TIME : สำหรับเก็บข้อมูลประเภทเวลา มีค่าได้ตั้งแต่ -838:59:59 ไปจนถึง 838:59:59 โดยจะแสดงผล ออกมาในรูปแบบ HH:MM:SS YEAR[(2/4)] 

       TINYBLOB : สำหรับเก็บข้อมูลประเภทไบนารี ได้แก่ ไฟล์ข้อมูลต่างๆ, ไฟล์รูปภาพ, ไฟล์มัลติมีเดีย เป็นต้น คือไฟล์อะไรก็ตามที่อัพโหลดผ่านฟอร์มอัพโหลดไฟล์ในภาษา HTML โดย TINYBLOB นั้นจะมีเนื้อที่ให้เก็บข้อมูลได้ 256 ไบต์

       BLOB : สำหรับเก็บข้อมูลประเภทไบนารี เช่นเดียวกับ TINYBLOB แต่สามารถเก็บข้อมูลได้ 64KB

      MEDIUMBLOB : สำหรับเก็บข้อมูลประเภทไบนารี เช่นเดียวกับ TINYBLOB แต่เก็บข้อมูลได้ 16MB

      LONGBLOB : สำหรับเก็บข้อมูลประเภทไบนารี เช่นเดียวกับ TINYBLOB แต่เก็บข้อมูลได้ 4GB ข้อสังเกต ข้อมูลประเภท BLOB นั้น แม้จะมีประโยชน์ในเรื่องของการเก็บข้อมูลประเภท BINARY ให้อยู่กับตัวฐานข้อมูล ทำให้สะดวกเวลาสืบค้นก็ตาม แต่มันก็ทำให้ฐานข้อมูลมีขนาดใหญ่ เกินความจำเป็นด้วย ทำให้เกิดความไม่สะดวกในการสำรองฐานข้อมูลในกรณีที่ มีข้อมูลอัพโหลดไป เก็บมากๆ โดยปกติแล้ว จะใช้วิธีการอัพโหลดไปเก็บไว้ในโฟลเดอร์ แล้วเก็บลิงก์ไปยังไฟล์เหล่านั้น เป็นฟิลด์ชนิด VARCHAR มากกว่า

      SET : สำหรับเก็บข้อมูลที่เป็นกลุ่มของข้อมูลที่ยอมให้เลือกได้ 1 ค่าหรือหลายๆ ค่า ซึ่งสามารถกำหนด ได้ถึง 64 ค่า


Engine by www.webUB.com

วันจันทร์ที่ 1 ธันวาคม พ.ศ. 2557

คำสั่ง SQL

1.SQL  Select

เป็นคำสั่งที่ใช้สำหรับการเรียกดูข้อมูลในตาราง (Table) คำสั่ง SQL SELECT สามารถเรียกได้ทั้งตาราง หรือว่า สามารถระบุฟิวด์ที่ต้องการเรียกดูข้อมูลได้ 

Database : MySQL,Microsoft Access,SQL Server,Oracle

Syntax

SELECT Column1, Column2, Column3,... FROM [Table-Name]


Sample1 การเลือกข้อมูลที่ระบุฟิวด์

SELECT CustomerID, Name, Email FROM customer

Output 


CustomerID
Name
Email
C001
Win Weerachaiwin.weerachai@thaicreate.com
C002
John Smithjohn.smith@thaicreate.com
C003
Jame Bornjame.born@thaicreate.com
C004
Chalee Angelchalee.angel@thaicreate.com
--------------------------------------------------------------------------------------

2.SQL AVG 

เป็นคำสั่งที่ใช้สำหรับการระบุเงื่อนไขการเลือกข้อมูลในตาราง (Table) โดยหาค่าเฉลี่ยผลรวมของฟิวด์

Database : MySQL,Microsoft Access,SQL Server,Oracle

Syntax

SELECT AVG(Column/Field) AS [New-Field] FROM [Table-Name]


Sample1 การเลือกข้อมูลค่าเฉลี่ยผลรวมของ Budget

SELECT AVG(Budget) AS AvgBudget FROM customer

Output 

AvgBudget
2500000

---------------------------------------------------------------------------------------

3.SQL DROP 

เป็นคำสั่งที่ใช้สำหรับการลบคุณสมบัติต่าง ๆ ของตาราง เช่น ลบตาราง , ลบฐานข้อมูล , ลบ Index 

Database : MySQL,Microsoft Access,SQL Server,Oracle

Syntax

- ลบฐานข้อมูล
DROP TABLE 'TableName'

- ลบตาราง
DROP DATABASE 'DatabaseName'

- ลบ Index
DROP INDEX TableName.IndexName (for SQL Server)
DROP INDEX TableName on IndexName (for Access)

-----------------------------------------------------------------------------------------

4.SQL UPDATE 

     เป็นคำสั่งที่ใช้สำหรับลบข้อมูลในตาราง (Table) โดยสามารถทำการลบได้หลาย Record ภายในคำสั่งเดียว หรือว่า Record เดียว ทั้งนี้ขึ้นอยู่กับ Where ที่ผูใช้เขียนขึ้นด้วย

Database : MySQL,Microsoft Access,SQL Server,Oracle

Syntax

DELETE FROM [Table-Name] WHERE clause


Table : country


CountryCode
CountryName
TH
Thailand
EN
English
US
United states
JP
Japan


Sample1 การลบข้อมูลลงใน Table 

DELETE FROM country WHERE CountryCode = 'JP'

Output 

CountryCode
CountryName
TH
Thailand
EN
English
US
United states
-----------------------------------------------------------------------------------------

5.SQL FIRST 

เป็นคำสั่งที่ใช้สำหรับการระบุเงื่อนไขการเลือกข้อมูลในตาราง (Table) โดยเลือกข้อมูล แถวแรกของข้อมูลที่พบ

Database : MySQL,Microsoft Access,SQL Server,Oracle

Syntax

SELECT FIRST(ColumnName) FROM TableName


Sample1 การเลือกข้อมูลแบบด้วย FIRST ในตาราง customer 

SELECT FIRST(Name) As Name FROM customer

Output 

Name
Weerachai Nukitram


------------------------------------------------------------------------------------------

6.MYSQL REPLACE()

เป็นคำสั่งของ MySQL ใช้ในการแทนที่ค่าใน String ที่ต้องการ

Database : MySQL

Syntax

REPLACE(str,from_str,to_str)


Sample

SELECT REPLACE('www.thaicreate.com', 'w', 'Ww');
-> WwWwWw.thaicreate.com


SQL REPLACE


----------------------------------------------------------------------------------------

7.MYSQL WEEK()

เป็นคำสั่งของ MySQL กับ DateTime โดย WEEK ใช้ในการหาสัปดาห์ของปี

Database : MySQL

Syntax

WEEK(date[,mode])

The following table describes how the mode argument works.
ModeFirst day of weekRangeWeek 1 is the first week …
0Sunday0-53with a Sunday in this year
1Monday0-53with more than 3 days this year
2Sunday1-53with a Sunday in this year
3Monday1-53with more than 3 days this year
4Sunday0-53with more than 3 days this year
5Monday0-53with a Monday in this year
6Sunday1-53with more than 3 days this year
7Monday1-53with a Monday in this year

Sample

SELECT WEEK('2008-02-20');
-> 7

SELECT WEEK('2008-02-20',0);
-> 7

SELECT WEEK('2008-02-20',1);
-> 8

SELECT WEEK('2008-12-31',1);
-> 35



----------------------------------------------------------------------------------------

8.SQL TRIM

เป็นคำสั่งที่ใช้สำหรับการระบุเงื่อนไขการเลือกข้อมูลในตาราง (Table) โดยทำการตัดช่องว่างของข้อความ

Database : MySQL,Microsoft Access,SQL Server,Oracle

Syntax

TRIM(' My String ') = 'MyString'
LTRIM(' My String ') = 'MyString '
RTRIM(' My String ') = ' MyString'



Sample1 ตัดช่องว่างทั้งด้านซ้ายและด้านขวา

SELECT Trim(Name) AS MyString FROM customer

Output 

MyString
Win Weerachai
John Smith
Jame Born
Chalee Angel


----------------------------------------------------------------------------------------

9.SQL USE

เป็นคำสั่งที่ใช้ในการเปลี่ยนหรือเรียกใช้ฐานข้อมูลปัจจุบัน

Database : MySQL , SQL Server 

Syntax

USE DatabaseName

----------------------------------------------------------------------------------------

10.MYSQL REPEAT()

เป็นคำสั่งของ MySQL ใช้ในการแทนที่แสดงจำนวนข้อความ ตามจำนวน Loop ที่ต้องการ

Database : MySQL

Syntax

REPEAT(str,count)


Sample

SELECT REPEAT('MySQL', 3);
-> MySQLMySQLMySQL

SELECT REPEAT('ThaiCreate', 5);
-> ThaiCreateThaiCreateThaiCreateThaiCreateThaiCreate

วันอังคารที่ 5 สิงหาคม พ.ศ. 2557

ระบบจัดการแผนงานออนไลน์

ตัวอย่างโครงงานเรื่อง    ระบบจัดการแผนงานออนไลน์



ความเป็นมาของโครงงาน

เนื่องจากปัญหาในการตรวจสอบการใช้งบประมาณของแต่ละโครงการของฝ่ายงานต่างๆ ต้องตรวจสอบกับเอกสารของฝ่ายแผนงานเท่านั้นทำให้ยุ่งยากในการตรวจสอบ  โดยเฉพาะบางกลุ่มงานไม่ได้บันทึกข้อมูลการใช้งบประมาณ

วัตถุประสงค์ของโครงงาน

เพื่อพัฒนาโปรแกรมระบบจัดการแผนงานออนไลน์ โรงเรียนสุราษฎร์พิทยา

สมมุติฐานของการดำเนินก าร (ถ้ามี)   -


ขอบเขตของการดำเนินการ

การใช้งานของระบบจัดการแผนงานออนไลน์ของกลุ่มงานนโยบายและแผนงานโรงเรียนสุราษฎร์พิทยา

เอกสารและงานวิจัยที่เกี่ยวข้อง

       โครงงานคอมพิวเตอร์มี 5 ประเภท ได้แก่
1. โครงงานพัฒนาสื่อเพื่อการศึกษา ลักษณะเด่นของโครงงานประเภทนี้ คือ เป็นโครงงานที่ใช้คอมพิวเตอร์ในการผลิตสื่อเพื่อการศึกษา
2.โครงงานประเภทการประยุกต์ใช้งาน โครงงานประยุกต์ใช้งานเป็นโครงงานที่ใช้คอมพิวเตอร์ในการ สร้างผลงานเพื่อประยุกต์ใช้งานจริงในชีวิตประจำวัน
3.โครงงานพัฒนาเกม โครงงานประเภทนี้เป็นโครงงานพัฒนาซอฟต์แวร์เกมเพื่อความรู้หรือเพื่อความ เพลิดเพลิน
4.โครงงานพัฒนาเครื่องมือ โครงงานประเภทนี้เป็นโครงงานเพื่อพัฒนาเครื่องมือช่วย สร้างงานประยุกต์ต่างๆ โดยส่วนใหญ่จะอยู่ในรูปซอฟต์แวร์
5. โครงงานประเภทการทดลองทฤษฎี โครงงานประเภทนี้เป็นโครงงานที่ใช้คอมพิวเตอร์ช่วยในการ จาลองการทดลองของสาขาต่างๆ ซึ่งเป็นงานที่ไม่สามารถทดลองด้วยสถานการณ์จริงได้

ข้อมูลเกี่ยวกับโปรแกรมที่ใช้ในการพัฒนา
-SQL คือ ภาษาสอบถามข้อมูล หรือภาษาจัดการข้อมูลอย่างมีโครงสร้าง มีการพัฒนาภาษาคอมพิวเตอร์    สำหรับโปรแกรมฐานข้อมูลที่ได้รับความนิยมคือ MySQL เป็น Open Source ที่ใช้งานได้ทั้งใน Linux และ Windows
- MySQL เป็นที่นิยมใช้กันมากสาหรับฐานข้อมูลสำหรับเว็บไซต์  นิยมใช้งานร่วมกับภาษาโปรแกรม PHP
-HTML เป็นภาษาคอมพิวเตอร์รูปแบบหนึ่ง ที่มีโครงสร้างการเขียนโดยอาศัยตัวกากับ (Tag) ควบคุมการแสดงผลข้อความ, รูปภาพ หรือวัตถุอื่นๆ ผ่านโปรแกรมเบราเซอร์ แต่ละ Tag อาจจะมีส่วนขยายที่เรียกว่า Attribute สาหรับระบุ หรือควบคุมการแสดงผล ของเว็บได้ด้วย
-พีเอชพี (PHP) ภาษาพีเอชพีใช้สำหรับจัดทำเว็บไซต์ และแสดงผลออกมาในรูปแบบ HTML โดยมีรากฐานโครงสร้างคาสั่งมาจากภาษาซี ภาษาจาวา และ ภาษาเพิร์ล ซึ่ง ภาษาพีเอชพี นั้นง่ายต่อการเรียนรู้ ซึ่งเป้าหมายหลักของภาษานี้ คือให้นักพัฒนาเว็บไซต์สามารถเขียน เว็บเพจ ที่มีความตอบโต้ได้อย่างรวดเร็ว
-โปรแกรม Photoshop เป็นโปรแกรมในตระกูล Adobe ที่ใช้สาหรับตกแต่งภาพถ่ายและภาพกราฟิก ได้อย่างมีประสิทธิภาพ
-อะโดบี ดรีมวีฟเวอร์ (Adobe Dreamweaver) หรือชื่อเดิมคือ แมโครมีเดียดรีมวีฟเวอร์ (Macromedia Dreamweaver) เป็นโปรแกรมแก้ไข HTML ดรีมวีฟเวอร์มีทั้งในระบบปฏิบัติการแมคอินทอช และไมโครซอฟท์วินโดวส์ ดรีมวีฟเวอร์ยังสามารถทางานบนระบบปฏิบัติการแบบยูนิกซ์ ผ่านโปรแกรมจาลองอย่าง WINEได้ รุ่นล่าสุดคือ ดรีมวีฟเวอร์ CS4   Dreamweaver สามารถทางานกับภาษาคอมพิวเตอร์ในการเขียนเว็บไซต์แบบไดนามิค ซึ่งมีการใช้ HTML เป็นตัวแสดงผลของเอกสาร เช่น ASP, ASP.NET, PHP, JSP และ ColdFusion รวมถึงการจัดการฐานข้อมูลต่างๆ อีกด้วย และในเวอร์ชันล่าสุด (เวอร์ชัน CS4) ยังสามารถทางานร่วมกับ XML และ CSS ได้อย่างง่ายดาย
-AppServ คือ ชุดโปรแกรมในลักษณะของ WAMP ในการสร้างเว็บเซิร์ฟเวอร์สาเร็จรูปบนระบบปฏิบัติการไมโครซอฟท์ วินโดวส์  เป็นการรวมโปรแกรมจานวน 4 ตัวในการสร้างเว็บเซิร์ฟเวอร์ ได้แก่
Apache HTTP Server , PHP ,MySQL , phpMyAdmin


วิธีดำเนินการ

1. การเลือกหัวข้อโครงงาน
2. การศึกษาค้นคว้าหาข้อมูลที่เกี่ยวข้องกับโครงงาน
3. การจัดทำข้อเสนอโครงงาน
4. การจัดทำโครงงานประกอบด้วย 4 ขั้นตอน ดังนี้
      -การวิเคราะห์และกำหนดรายละเอียดของปัญหา โดยระบุการระบุข้อมูลเข้า(รับชื่อผู้ใช้และรหัสผ่าน รับชื่อโครงการ รายละเอียดโครงการ และการเบิกจ่ายงบประมาณ)  การระบุข้อมูลออก(ข้อมูลจำนวนเงินคงเหลือในแต่ละโครงการ/สังกัดฝ่าย และ ยอดรวมจำนวนเงินของทุกฝ่ายงาน) การประมวลผล(ตรวจสอบยอดงบประมาณรวมของกิจกรรมในแต่ละโครงการและยอดงบประมาณที่เหลือจากการหักค่าใช้จ่ายในแต่ละครั้ง )
    -การเลือกเครื่องมือและออกแบบขั้นตอนวิธีในการแก้ปัญหา
     -การดำเนินการแก้ปัญหา  พัฒนาโปรแกรมระบบแผนงานออนไลน์ด้วยภาษา PHP และจำลองเว็บผ่านโปรแกรม AppServ
 Upload ฐานข้อมูลและเว็บไซต์เข้าสู่ Server โรงเรียนสุราษฎร์พิทยา
    -การตรวจสอบและปรับปรุงวิธีการ  โดยตรวจสอบกับบราวเซอร์ของ Notebook PC iPhone iPad Android
5.การเขียนรายงาน จัดทรายงานเป็นรูปเล่ม
6.การนำเสนอและแสดงผลงานของโครงงาน
-งานนิทรรศการแสดงผลงานนักเรียนของกลุ่มสาระการงานอาชีพและเทคโนโลยี เ
-งานศิลปหัตถกรรมนักเรียน ครั้งที่ 62
-งานนิทรรศการทางวิชาการ เปิดบ้านสู่ชุมชน ปีการศึกษา 2555” ณ โรงเรียนสุราษฎร์พิทยา
-ผ่านทางเว็บไซต์ http://www2.srp.ac.th/~ict/ และ http://www2.srp.ac.th/~general/

ผลการดำเนินการ

ได้โปรแกรมที่มีวิธีการเข้าใช้งานดังนี้
-หน้าจอเข้าสู่ระบบ
-หน้าจอเลือกโครงการ
-หน้าจอจัดการผู้ใช้
-หน้าจอเปลี่ยนรหัสผ่าน
-บันทึกการเบิกจ่ายงบประมาณ
-แสดงรายงานสรุปประจ าปี
-รายงานสรุปการใช้งบประมาณรายปี เป็นไฟล์ .xlsx

สรุปผล อภิปราย และข้อเสนอแนะ

กลุ่มงานนโยบายและแผนงานโรงเรียนสุราษฎร์พิทยา สามารถใช้ระบบแผนงานออนไลน์ ผ่านเว็บไซต์ของฝ่ายบริหารทั่วไป  http://ict.srp.ac.th/~sproject0155/PlanOnline โดยผู้ใช้ต้อง Login เข้ามาใช้ระบบ โปรแกรม รับข้อมูลชื่อโครงการและรายละเอียดของกิจกรรม และสามารถเพิ่มรายการการเบิกจ่ายงบประมาณ ตรวจสอบยอดงบประมาณรวมของกิจกรรมในแต่ละโครงการและยอดงบประมาณที่เหลือจากการหักค่าใช้จ่ายในแต่ละครั้ง สามารถแสดงรายละเอียดการเบิกจ่ายในรูปของไฟล์งาน excel ได้ โดยสามารถเลือกให้แสดงออกเป็นช่วงเดือนหรือรายปีได้ สามารถใช้งานได้ทั้งทาง iPAD,iPhone,Android


เอกสารอ้างอิง
http://www.thaigoodview.com/library/contest2552/type2/tech04/47/page/1_introduce.html
http://starlovekhun.exteen.com/20110710/php วันที่ 30 มิถุนายน 2555.
http://www.appservnetwork.com
http://www.holy.ac.th/holy/html.htm
http://teacher.skw.ac.th/salunyar/40102/unit_05/p_501.htm
http://www.appservnetwork.com
http://my-opensource-software.blogspot.com/2011/09/appserv.html
http://www.edu-mine.com/photoshop/lesson1_IntroPhotoshop.html
http://www.choosak.com/page-29/

ข้อเสนอแนะในการปรับปรุงโครงงาน

 -มีการนำไปใช้ในหน่วยงานต่างๆอย่างกว้างขวางขึ้น

วันอังคารที่ 8 กรกฎาคม พ.ศ. 2557

ฮาร์ดแวร์คอมพิวเตอร์ (Computer hardware)

ความหมายของฮาร์ดแวร์

        ฮาร์ดแวร์ หมายถึง ส่วนที่ประกอบเป็นเครื่องคอมพิวเตอร์ รวมอุปกรณ์ต่อพ่วงต่างๆ ที่เกี่ยวข้องกับคอมพิวเตอร์ที่เราสามารถมองเห็นและสัมผัสได้ เช่น ตัวเครื่อง จอภาพ คีย์บอร์ด และเมาส์ เป็นต้น เครื่องคอมพิวเตอร์ส่วนบุคคลโดยทั่วไปจะมีฮาร์ดแวร์หลัก ๆ ได้แก่
        1. ตัวเครื่อง (Case) ทำหน้าที่ในส่วนของการประมวลผลข้อมูลที่ได้รับมาจากอุปกรณ์นำเข้าต่างๆ ซึ่งภายในตัวเครื่องจะมีอุปกรณ์หลัก ได้แก่ แผงวงจรหลัก หม้อแปลงไฟฟ้า ซีพียู ฮาร์ดดิสก์ หน่วยความจำ การ์ดแสดงผล การ์ดเสียง เป็นต้น
        2. จอภาพ (Monitor) ทำหน้าที่แสดงผลข้อความ รูปภาพ
        3. ดิสก์ไดร์ฟ (Disk drive) เป็นอุปกรณ์อ่าน-เขียนข้อมูลบนดิสก์เก็ต
        4. คีย์บอร์ด (Keyboard) ทำหน้าที่ป้อนข้อมูลเข้าเครื่องคอมพิวเตอร์
        5. เม้าส์ (Mouse) เป็นส่วนที่ใช้สั่งงานด้วยการชี้และเลือกสิ่งต่างๆที่แสดงอยู่บนจอภาพ
        6. ลำโพง (Speaker) เป็นส่วนที่ใช้แสดงผลที่เป็นเสียง

ส่วนประกอบของคอมพิวเตอร์

จำแนกตามหน้าที่ของฮาร์ดแวร์สามารถแบ่งเป็นส่วนสำคัญ 5 ส่วน คือ
        1. หน่วยรับข้อมูล (Input Unit) ทำหน้าที่รับโปรแกรมคำสั่ง และข้อมูลเข้าสู่เครื่องคอมพิวเตอร์
        2. หน่วยประมวลผลกลาง (Central Processing Unit - CPU) ทำหน้าที่เกี่ยวกับการคำนวณทั้งทางตรรกะและคณิตศาสตร์ รวมทั้งการประมวลข้อมูลตามคำสั่งที่ได้รับ
        3. หน่วยความจำ (Memory Unit) ทำหน้าที่เก็บข้อมูลหรือคำสั่งที่ส่งมาจากหน่วยรับข้อมูล เพื่อเตรียมส่งไปประมวลผลยังหน่วยประมวลผลกลาง และเก็บผลลัพธ์ที่ได้มาจากการประมวลผลแล้วเพื่อเตรียมส่งไปยังหน่วยแสดงผล
        4. หน่วยแสดงผล (Output Unit) ทำหน้าที่แสดงผลข้อมูลที่คอมพิวเตอร์ทำการประมวลผล หรือผ่านการคำนวณแล้ว
        5. อุปกรณ์ต่อพ่วงอื่นๆ (Peripheral Equipment) เป็นอุปกรณ์ที่นำมาต่อพ่วงเข้ากับคอมพิวเตอร์ เพื่อช่วยเพิ่มประสิทธิภาพในการทำงานให้มากยิ่งขึ้น เช่น โมเด็ม แผงวงจรเชื่อมต่อเครือข่าย เป็นต้น

หน่วยรับข้อมูล (Input Unit)

ฮาร์ดแวร์ที่ทำหน้าที่เป็นหน่วยรับข้อมูลมีหลากหลายอุปกรณ์ ได้แก่
        1. คีย์บอร์ด (Keyboard) อุปกรณ์รับข้อมูลจากการกดแป้นแล้วทำการเปลี่ยนเป็นรหัส เพื่อบอกให้คอมพิวเตอร์รู้ว่ามีการกดตัวอักษรอะไร แผงแป้นอักขระส่วนใหญ่เป็นไปตามมาตรฐานของเครื่องพิมพ์ดีด ซึ่งระบบรับรหัสตัวอักขระที่ใช้ในทางคอมพิวเตอร์เป็นรหัส 7 หรือ 8 บิต (Operator)



                                                   ที่มาของภาพ www.comproedu.com


        2. เมาส์ (Mouse) อุปกรณ์นำเข้าข้อมูลโดยการเลื่อนเมาส์เพื่อบังคับตัวชี้ไปยังตำแหน่งต่างๆ บนหน้าจอ เมาส์ที่นิยมใช้มีด้วยกัน 3 ประเภทได้แก่
        - แบบทางกล (Mechanical) ใช้ลูกกลิ้งกลม
        - แบบใช้แสง (Optical mouse)
        - แบบไร้สาย (Wireless Mouse) ที่มาของภาพ



                                                       ที่มาของภาพ www.nanmeebooks.com


        3.สแกนเนอร์ (Scanner) เป็นอุปกรณ์นำเข้าข้อมูลที่เป็นเอกสาร รูปภาพ หรือ รูปถ่าย สแกนเนอร์สามารถแบ่งออกได้ 3 ประเภท คือ
        - แบบเลื่อนกระดาษ (Sheet-Fed Scanner) สแกนเนอร์แบบนี้จะรับกระดาษแล้วค่อย ๆ เลื่อนหน้ากระดาษให้ผ่านหัวสแกนซึ่งอยู่กับที่


                                                ที่มาของภาพ www. banchee.lopburi1.net


        - แบบแท่นนอน (Flatbed scanner) สแกนเนอร์แบบนี้จะมีกลไกคล้ายกับเครื่องถ่ายเอกสาร เหมาะสำหรับใช้กับเอกสารทั้งที่เป็นแผ่นเดียวและเอกสารที่เป็นเล่ม 


                                                      ที่มาของภาพwww. buycoms.com


        4. แผ่นสัมผัส (Touch Pads) เป็นอุปกรณ์รับข้อมูลโดยการใช้นิ้วสัมผัสลงบนแผ่นสัมผัส น้ำหนักที่กดสงไปจะถูกเปลี่ยนเป็นสัญญาณไฟฟ้า มักเห็นอยู่ในเครื่องคอมพิวเตอร์โน้ตบุ๊ก\

                                                         www.hackitlinux.com


        5. กล้องดิจิทัล (Digital Camera) เป็นอุปกรณ์รับข้อมูลเข้าสู่เครื่องคอมพิวเตอร์ ที่สามารถแปลงข้อมูลภาพเป็นสัญญาณดิจิทัล มีลักษณะการใช้งานเหมือนกล้องถ่ายภาพทั่วไป แต่ต่างกันตรงที่ไม่ต้องใช้ฟิล์มในการบันทึกข้อมูล ข้อมูลภาพที่ได้สามารถถ่ายลงสู่เครื่องคอมพิวเตอร์และสามารถเรียกดูได้ทันที หรือจะใช้โปรแกรมช่วยตกแต่งภาพให้ดูสวยงามขึ้นก็ได้


                                                              www.mxphone.com


หน่วยความจำ (Memory Unit)

        เป็นหน่วยจัดเก็บข้อมูลที่ทำงานได้รวดเร็วที่สุด ซึ่งสามารถจำแนกตามลักษณะการใช้งานได้ 2 ประเภท คือ
        1. หน่วยความจำหลัก (Main Memory) หรือเรียกว่า หน่วยความจำภายใน (Internal Memory) สามารถแบ่งออกเป็น 2 ประเภท ได้แก่
        - รอม (Read Only Memory - ROM) เป็นหน่วยความจำที่มีโปรแกรมหรือข้อมูลอยู่แล้ว สามารถเรียกออกมาใช้งานได้แต่จะไม่สามารถเขียนเพิ่มเติมได้ และแม้ว่าจะไม่มีกระแสไฟฟ้าไปเลี้ยงให้แก่ระบบข้อมูลก็ไม่สูญหายไป
        - แรม (Random Access Memory) เป็นหน่วยความจำที่สามารถเก็บข้อมูลได้เมื่อมีกระแสไฟฟ้าหล่อเลี้ยงเท่านั้น เมื่อใดไม่มีกระแสไฟฟ้ามาเลี้ยงข้อมูลที่อยู่ในหน่วยความจำชนิดนี้จะหายไปทันที

        2. หน่วยความจำรอง (Second Memory) หรือหน่วยความจำภายนอก (External Memory) เป็นหน่วยความจำที่ต้องอาศัยสื่อบันทึกข้อมูลและอุปกรณ์รับ-ส่งข้อมูลชนิดต่างๆ ได้แก่
        - ฮาร์ดดิสก์ (Hard Disk) เป็นฮาร์ดแวร์ที่ทำหน้าที่เก็บข้อมูลในเครื่องคอมพิวเตอร์ ทั้งโปรแกรมใช้งานต่างๆ ไฟล์เอกสาร รวมทั้งเป็นที่เก็บระบบปฏิบัติการที่เป็นโปรแกรมควบคุมการทำงานของเครื่องคอมพิวเตอร์ด้วย
        - ฟล็อบปี้ดิสก์ (Floppy Disk) เป็นอุปกรณ์บันทึกข้อมูลที่มีขนาด 3.5 นิ้ว มีลักษณะเป็นแผ่นกลมบางทำจากไมลาร์ (Mylar) สามารถบรรจุข้อมูลได้เพียง 1.44 เมกะไบต์ เท่านั้น
        - ซีดี (Compact Disk - CD) เป็นอุปกรณ์บันทึกข้อมูลแบบดิจิทัล เป็นสื่อที่มีขนาดความจุสูง เหมาะสำหรับบันทึกข้อมูลแบบมัลติมีเดีย ซีดีรอมทำมาจากแผ่นพลาสติกกลมบางที่เคลือบด้วยสารโพลีคาร์บอเนต (Poly Carbonate) ทำให้ผิวหน้าเป็นมันสะท้อนแสง โดยมีการบันทึกข้อมูลเป็นสายเดียว (Single Track) มีขนาดเส้นผ่าศูนย์กลางประมาณ 120 มิลลิเมตร ปัจจุบันมีซีดีอยู่หลายประเภท ได้แก่ ซีดีเพลง (Audio CD) วีซีดี (Video CD - VCD) ซีดี-อาร์ (CD Recordable - CD-R) ซีดี-อาร์ดับบลิว (CD-Rewritable - CD-RW) และ ดีวีดี (Digital Video Disk - DVD)
        - รีมูฟเอเบิลไดร์ฟ (Removable Drive) เป็นอุปกรณ์เก็บข้อมูลที่ไม่ต้องมีตัวขับเคลื่อน (Drive) สามารถพกพาไปไหนได้โดยต่อเข้ากับเครื่องคอมพิวเตอร์ด้วย Port USB ปัจจุบันความจุของรีมูฟเอเบิลไดร์ฟมีตั้งแต่ 8 , 16 , 32 , 64 , 128 จนถึง 1024 เมกะไบต์ ทั้งนี้ยังมีไดร์ฟลักษณะเดียวกัน เรียกในชื่ออื่นๆ ได้แก่ Pen Drive , Thump Drive , Flash Drive
        - ซิบไดร์ฟ (Zip Drive) เป็นสื่อบันทึกข้อมูลที่จะมาแทนแผ่นฟล็อปปี้ดิสก์ มีขนาดความจุ 100 เมกะไบต์ ซึ่งการใช้งานซิปไดร์ฟจะต้องใช้งานกับซิปดิสก์ (Zip Disk) ความสามารถในการเก็บข้อมูลของซิปดิสก์จะเก็บข้อมูลได้มากกว่าฟล็อปปี้ดิสก์
        - Magnetic optical Disk Drive เป็นสื่อเก็บข้อมูลขนาด 3.5 นิ้ว ซึ่งมี ขนาดพอๆ กับฟล็อบปี้ดิสก์ แต่ขนาดความจุมากกว่า เพราะว่า MO Disk drive 1 แผ่นสามารถบันทึกขัอมูลได้ตั้งแต่ 128 เมกะไบต์ จนถึงระดับ 5.2 กิกะไบต์
        - เทปแบ็คอัพ (Tape Backup) เป็นอุปกรณ์สำหรับการสำรองข้อมูล ซึ่งเหมาะกับการสำรองข้อมูลขนาดใหญ่มากๆ ขนาดระดับ 10-100 กิกะไบต์
        - การ์ดเมมโมรี (Memory Card) เป็นอุปกรณ์บันทึกข้อมูลที่มีขนาดเล็ก พัฒนาขึ้น เพื่อนำไปใช้กับอุปกรณ์เทคโนโลยีแบบต่างๆ เช่น กล้องดิจิทัล คอมพิวเตอร์มือถือ (Personal Data Assistant - PDA) โทรศัพท์มือถือ เป็นต้น

หน่วยประมวลผลกลาง (Central Processing Unit - CPU)

        หน่วยประมวลผลกลางหรือซีพียู เรียกอีกชื่อหนึ่งว่า โปรเซสเซอร์ (Processor) หรือ ชิป (chip) นับเป็นอุปกรณ์ที่มีความสำคัญมากที่สุดของฮาร์ดแวร์ เพราะมีหน้าที่ในการประมวลผลข้อมูลที่ผู้ใช้ป้อน เข้ามาทางอุปกรณ์นำเข้าข้อมูลตามชุดคำสั่งหรือโปรแกรมที่ผู้ใช้ต้องการใช้งาน หน่วยประมวลผลกลาง ประกอบด้วยส่วนสำคัญ 3 ส่วน คือ
        1. หน่วยคำนวณและตรรกะ (Arithmetic & Logical Unit : ALU) หน่วยคำนวณตรรกะ ทำหน้าที่เหมือนกับเครื่องคำนวณอยู่ในเครื่องคอมพิวเตอร์ โดยทำงานเกี่ยวกับการคำนวณทางคณิตศาสตร์ เช่น บวก ลบ คูณ หาร อีกทั้งยังมีความสามารถอีกอย่างหนึ่งที่เครื่องคำนวณธรรมดาไม่มี คือ ความสามารถในเชิงตรรกะศาสตร์ หมายถึง ความสามารถในการเปรียบเทียบตามเงื่อนไข และกฎเกณฑ์ทางคณิตศาสตร์ เพื่อให้ได้คำตอบออกมาว่าเงื่อนไข นั้นเป็น จริง หรือ เท็จ ได้
        2. หน่วยควบคุม (Control Unit) หน่วยควบคุม ทำหน้าที่ควบคุมลำดับขั้นตอนการประมวลผล รวมไปถึงการประสานงานกับอุปกรณ์นำเข้าข้อมูล อุปกรณ์แสดงผล และหน่วยความจำสำรองด้วย ซีพียูที่มีจำหน่ายในท้องตลาด ได้แก่ Pentium III , Pentium 4 , Pentium M (Centrino) , Celeron , Dulon , Athlon

หน่วยแสดงผล (Output Unit)

        เป็นอุปกรณ์ส่งออก (Output device) ทำหน้าที่แสดงผลลัพธ์เมื่อซีพียูทำการประมวลผล
        1. จอภาพ (Monitor) เป็นอุปกรณ์แสดงผลลัพธ์ที่เป็นภาพ ปัจจุบันแบ่งออกเป็น 2 ชนิด คือ จอภาพแบบ CRT (Cathode Ray Tube) และ จอภาพแบบ LCD (Liquid Crystal Display)
        2. เครื่องพิมพ์ (Printer) เป็นอุปกรณ์ที่ทำหน้าที่แสดงผลลัพธ์ในรูปของอักขระหรือรูปภาพที่จะไปปรากฏอยู่บนกระดาษ แบ่งออกเป็น 4 ประเภท ได้แก่ เครื่องพิมพ์ดอตเมตทริกซ์ (Dot Matrix Printer) เครื่องพิมพ์แบบพ่นหมึก (Ink-Jet Printer) เครื่องพิมพ์แบบเลเซอร์ (Laser Printer) และ พล็อตเตอร์ (Plotter)
        3. ลำโพง (Speaker) เป็นอุปกรณ์แสดงผลลัพธ์ที่อยู่ในรูปของเสียง สามารถเชื่อมต่อกับคอมพิวเตอร์ผ่านแผงวงจรเกี่ยวกับเสียง (Sound card) ซึ่งมีหน้าที่แปลงข้อมูลดิจิทัลไปเป็นเสียง

วิธีเรียกใช้ และทดสอบการใช้งาน AppServ

เข้าไปที่บราวเซอร์ หรือ InternetExporler ก็ได้ แล้วไปที่ http://localhost ก็จะเจอกับหน้าตาคร่าวๆตามรูป




ขั้นตอนต่อไปทดลองเขียนโปรแกรมเพื่อทดสอบการทำงาน

เริ่มต้นโดยการไปที่ C:\AppServ\www ตรงนี้จะเป็นที่เก็บไฟล์ข้อมูลของเรา เพื่อรันโปรแกรม ภาษาที่จะใช้เขียนคือ PHP นั่นเอง ในโฟลเดอร์นี้เริ่มทดสอบขั้นต่อไปโดยการสร้าง Folder ขึ้นมา


ในที่นี้สร้างโฟลเดอร์ชื่อ Application ขึ้นมา




ทดลองเขียนไฟล์ชื่อ index.php เก็บไว้ที่ c:\Appserv\www\Application ที่เราสร้างขึ้นก่อนหน้านี้




หลังจากบันทึกไฟล์แล้ว สามารถลองรันโปรแกรมที่เราเขียนขึ้นได้ โดยไปที่ http://localhost/Application สังเกตุว่าต่อจาก  localhost จะ / ด้วยชื่อโฟลเดอร์ที่เราได้สร้างขึ้นก่อนหน้านี้ ถ้าเราสร้างโฟลเดอร์ชื่ออื่นเราก็เข้าไปด้วยการ ต่อท้ายชื่อโฟลเดอร์ของเราเข้าไปแทน




Cr. http://pongpat.janthai.com