ผู้เขียน หัวข้อ: ใช้งาน Access โดยไม่ต้องมี Access ที่เครื่องได้ไหม  (อ่าน 1143 ครั้ง)

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

admin

  • Administrator
  • Hero Member
  • *****
  • กระทู้: 2590
  • คนดีไม่เบ่ง คนเก่งไม่โม้ คนใหญ่โตไม่อวด
    • ดูรายละเอียด
    • อีเมล์
ได้สร้างโปรแกรมบัญชี จาก Access 2007 แต่อยากให้
ใช้งาน Access ที่ใดก็ได้โดยไม่ต้องมี Access ที่เครื่องได้ไหม
จะต้อง export อย่างไร หรือเขียนโค้ดอย่างไร

ใช้ access 2007 runtime แทนได้ครับ

ที่ Download Access Runtime ครับ

http://www.microsoft.com/download/en/details.aspx?id=4438

ก็เป็นเหมือนโปรแกรม Access เลยครับ
แต่ถูกตัดความสามารถในการแก้ไขโปรแกรม หรือสร้างโปรแกรมขึ้นใหม่ (ใช้งานไฟล์ที่มีอยู่แล้วได้อย่างเดียว คือ การเพิ่ม record แก้ไข record)
เมื่อ download มาแล้วก็ต้อง install ลงเครื่องครับ เพียงแต่เป็นแบบแจกฟรี ไม่ต้องลงทะเบียนหรืออะไรทั้งนั้น ใช้งานได้เลย

แปลว่า เครื่องที่จะใช้ ก็ต้องติดตั้ง Access Runtime ด้วยใช่หรือไม่
แล้วหากเครื่องเป้าหมาย มี Microsoft Access อยู่แล้ว เกิดลง Access Runtime ทับเข้าไปอีก จะเกิดปัญหาอะไรหรือไม่
Access Runtime สามารถอ่านไฟล์ที่สร้างจากเวอร์ชั่นเก่ากว่า ได้ไหม โดยเฉพาะไฟล์ .mde
ขอความรู้เพิ่มเติมด้วยครับ

- ต้องติดตั้งครับ
- เครื่องที่มี Access อยู่แล้ว จะไม่มีผลและไม่มีปัญหาครับ เครื่องก็จะเปิด Access ตัวเต็ม ดังนั้นจึงไม่ต้องลงครับ เพราะไม่มีประโยชน์ใดๆเลย แต่ถ้าไม่รู้ลงไปก็ไม่เป็นไร unintall ออกได้ไม่มีปัญหา ลองแล้วครับ
- อ่านได้หมดครับ เวอร์ชั่นเก่าอ่านได้ครับ เท่าที่เคยใช้คือโหลด Runtime 2010 ใช้กับ 2003 และ 2007 ได้ เก่ากว่านี้ไม่เคยลอง


ถ้าต้องการ Version 2007 ก็ ลิ้งนี้ครับ
http://www.microsoft.com/download/en/details.aspx?id=4438


ถ้าต้องการ Version 2010 ก็ ลิ้งค์นี้นะครับ
http://www.microsoft.com/download/en/details.aspx?id=10910

โหลดมา แล้วก็ติดตั้ง ใส่เครื่องที่ไม่มี Access ก็จะสามารถ ใช้งานได้ครับ



มีข้อสงสัยครับ (คือแบบว่ายังไม่เข้าใจน่ะครับ)

ถ้าหากลง Access 2007 Runtime เข้าไปยังเครื่องเป้าหมายแล้ว (Runtime จะไม่สามารถแก้ไขโปรแกรม, แต่เรามีงานทำโปรแกรมไว้ที่เครื่องเรา, และจะให้เป้าหมายเห็นโปรแกรมที่เราทำอย่างไรครับ

ขอบคุณล่วงหน้าครับ...ที่จะอธิบายให้เข้าใจละเอียดสำหรับผู้ไม่รู้ครับ

คือประมาณว่า ถ้าคุณใช้ Access Runtime คุณจะสามารถ เพิ่ม ลบ แก้ไข ได้เฉพาะข้อมูล เหมือนคุณทำงานบนฟอร์ม หรือ รายงาน ได้ตามปกติ แต่จะไม่สามารถใช้ Design View หรือ Navigation Pane

หากคุณจะเขียนโค๊ดเพิ่มความสามารถต่างๆให้กับไฟล์ Access คุณต้องใช้ตัวเต็มครับ Runtime สำหรับ user เท่านั้น

ซึ่งผมใช้ 2010 Runtime อยู่ แม้แต่เปิดไฟล์ access ที่ไม่ได้ทำ Autoexec หรือ ให้เปิดฟอร์ม, ตาราง... แบบอัตโนมัติแล้ว จะไม่เห็นอะไรเลย ฉนั้น หากใช้ Runtime ต้องทำ Autoexec เปิดฟอร์มที่จะใช้ด้วยครับ เสร็จแล้วค่อยทำปุ่มไปเปิดฟอร์มต่างๆที่ต้องการ (เพราะมันตัด Navigation Pane ไม่ให้ใช้ รวมทั้ง เมนูก็ไม่ให้ใช้ด้วย)

สรุปคือ มันคือ Access สำหรับใช้งานฐานข้อมูลอย่างเดียวเท่านั้น ไม่สามารถเขียนโค๊ด VBA, Macro, SQL ... อื่นๆ ฉนััน มันเหมาะสำหรับ user ใช้อย่างเดียว แต่จุดดีที่ใช้เพราะมันลดต้นทุนได้ครับ คือมันเป็น Free ware ใช้แล้วสบายใจ

ปล. หากใช้งานแบบ...(ไม่มีใครมาตรวจสอบ) และไม่อยากลง access ในเครื่องแล้ว หาพวกที่เค้าทำเป็น Portable ใช้งานได้ดีกว่าครับ แต่เราจะเป็นคนไม่ดีนะ 555

1) เครื่อง (PC) ของผมเป็น Microsofft Office 2003 Full ซึ่งมี Access, และพัฒนาโปรแกรมบนเครื่องนี้เป็นไฟล์....เดิมเมื่อผมพัฒนาเป็นไฟล์งานชนิดหนึ่งซึ่งได้ .mdb ตัวหนึ่งแล้ว, copy ไปไว้ที่เครื่อง user (PC) ที่ต้องการใช้ (เครื่อง user เครื่องนั้นมี Office 2003 full เช่นกัน) User ก็ใช้งานได้ปกติครับ แต่ก็เป็นเหมือน Stand alone เครื่องอื่นจะใช้ไม่ได้

2) เครื่อง pc ของ User ที่เหลือส่วนหนึ่ง, ไม่มีลิขสิทธิ์, จึงไม่ได้ลง Office 2003 full
แต่ลง Office 2003 Part (มี Word, Excel, PowerPoint, ไม่มี Access) ผมจึงมีความคิดที่จะ install Access 2007 runtime เข้าไปในเครื่อง
ไม่ทราบว่าผมจะเข้าใจถูกหรือไม่, ปัญหาที่ถามตามมาคือว่า

    2.1) Access 2007 runtime เมื่อลงแล้ว, มันคือไฟล์โปรแกรม Access ตัวหนึ่งที่จะให้เปิดใช้งาน access ใช่ไหมครับ (โดยที่ไม่มี ตาราง,คิวรี่,ฯลฯ อยุ่ใช่ไหมครับ)

    2.2) ผมต้องทำโปรแกรมจากเครื่องผม (จาก Access 2003 full) และสร้างเป็นไฟล์ที่ทำแล้วหนึ่งตัว คือ .mdb , จากนั้นไป copy ลงในเครื่อง users ที่มี access 2007 runtime, เพื่อให้มันไปเรียกหาไฟล์ตัวนี้ใช้งานใช่ไหมครับ (และดำเนินตามวิธีของคุณ TTT เีกี่ยวกับ Autoexec และปุ่มเรียกฟอร์มต่าง ๆ)

กรณีจะแชร์ไฟล์

   2.3) และถ้าจะเปลี่ยนจาก Stand alone ให้เป็นแบบ sprite database, เพราะจะได้ใช้งานร่วมกัน, จะทำได้ประมาณนี้หรือไม่ครับ คือ ทำไฟล์ที่ Access 2003 full และ sprit database ออกเป็น Back End (ประมาณนี้ครับเคยทำแต่จะไม่ค่อยได้) และไว้ที่ server (พอดีที่ฝ่ายมี server ใช้งานภายใน 1 ตัวครับ) และ front end ไว้ที่เครื่่อง user (เครื่องที่มี Office 2003 full) ก็จะใช้งานได้
   
    2.4) ส่วนเครื่องที่มี access 2007 runtime จะเข้ามามองเห็น Back End ได้หรือไม่ครับ, เพื่อใช้งานไฟล์ร่วมกันแบบแชร์ไฟล์น่ะครับ

@twin จริงๆคุณน่าจะลองดูสักเครื่องจะเห็นภาพได้ชัดเจนที่สุดนะครับ สามารถโหลดได้ฟรีครับ ไม่ชอบก็ Uninstall ได้เหมือนกันครับ
ตอบ
1. ใช้งานได้ครับ คือ access runtime มันสามารถใช้งานได้ทุกอย่างที่คุณทำเสร็จมาแล้วครับ
2. เข้าใจถูกแล้วครับ Office ที่ไม่ใช่ Pro จะไม่มี Access มาให้ คุณต้องลง access runtime ซึ่งก็อย่างที่บอก มันสามารถเรียกใช้งานไฟล์ mdb หรือ accdb ได้ แต่จะสร้างไฟล์ใหม่ไม่ได้
2.1 มันคือโปรแกรม Access ตัวหนึ่ง แต่จะไม่มีไฟล์ exe ให้เรียกเปล่าๆนะครับ การเรียก Access Runtime ต้องเรียกแบบ คลิ๊กๆกับไฟล์ mdb หรือ accdb เท่านั้น ส่วนที่ว่าไม่มีตาราง,คิวรี่,ฯลฯ นั้น คือโปรแกรมมันต้องเห็นอยู่แล้ว เพียงแต่มันกันไว้ไม่ให้เราเข้าไปดู โดยตัดเมนู Navigation Pane และส่วนต่างๆที่ไม่ใช่ส่วนของการใช้งานออก
2.2 ถ้าคุณมีไฟล์ mdb ที่สมบรูณ์พร้อมใช้งานแล้ว คุณจะแชร์จากเครื่องเปิด หรือ copy ใส่เครื่องเปิดได้ทั้งนั้น
2.3 การทำ Front, Back End ทำได้หมด ถ้า Access ตัวเต็มลองแล้วใช้ได้ Access Runtime ก็ทำได้ครับ เพียงแต่คุณต้องเขียนโค๊ด ฟังก์ชั่นต่างๆ link table ให้เรียบร้อยในเครื่อง Access แบบเต็มก่อนเท่านั้น
2.4 ก็เหมือนที่บอกไปอ่ะครับ ใช้งานได้เหมือนตัวเต็มทุกอย่าง แต่เน้นนะครับว่าใช้งานเท่านั้น

คือผมก็ไม่รู้ว่าจะอธิบายให้เข้าใจหมดได้ไง สรุปเอาเป็นว่า ถ้าคุณทำไฟล์ mdb ที่สมบรูณ์ พร้อมใช้งานได้แบบไม่มีปัญหาใดๆแล้ว คุณก็ใช้ Access runtime ใช้งานได้เหมือน Access ตัวเต็มทุกประการณ์ครับ

- เสริมนิดหน่อยนะครับ ซึ่งคุณอาจต้องรู้ไว้ ที่ผมเจออย่างนึงที่ต้องระวังการเขียนโค๊ด ถ้าในไฟล์ mdb คุณ มีการเขียนโค๊ดประเภท ดัก Error ที่อ้างถึงเลข Error โค๊ด ใน Access Runtime เวลาเจอการ Error แบบนี้มันจะไม่ Return ค่า Error โค๊ดกลับมา (คือมันไม่แจ้ง Error โค๊ดเลย) ทำให้โปรแกรมไม่อ่านค่า คำสั่งที่เราเขียนดัก Error โค๊ดได้ มันจะปิดโปรแกรมเลย
- ไม่อธิบายเองรู้สึกงงเองเหมือนกัน เอาเป็นว่า เช่นถ้าคุณเขียนประมาณว่า
Select case err.number
case 2046, 2101
ให้ทำ...
End Select
ประมาณนี้ไม่ได้ เพราะเวลามัน Error มันจะไม่มีเลขแสดง ทำให้อ้างอย่างนี้ไม่ได้
การเขียนดัก Error จึงต้องเขียนแบบไม่อ้างเลข นั่นเป็นปัญหาเดียวที่ไม่เหมือนกับเวอร์ชั่นเต็มที่ผมเจอนะ นอกนั้นการทำ Front end Back end ดึงจาก Server หรือ แชร์ไฟล์เครื่องอื่น ไม่มีปัญหาครับ

พอดีปัจจุบันนี้เครื่องที่ทำงานแบบว่า Secure ๆ ๆ ๆ ๆ จนจะทำอะไรไม่ได้แล้วครับ
ผมจึงจะศึกษาให้เข้าใจพอควรก่อนแล้วจึงจะไปลงน่ะครับ

อ่านมาทั้งหมดส่วนใหญ่เข้าใจครับ, มีบางอย่างไม่ค่อยเข้าใจเท่าไรนัก

"คือผมก็ไม่รู้ว่าจะอธิบายให้เข้าใจหมดได้ไง สรุปเอาเป็นว่า ถ้าคุณทำไฟล์ mdb ที่สมบรูณ์ พร้อมใช้งานได้แบบไม่มีปัญหาใดๆแล้ว คุณก็ใช้ Access runtime ใช้งานได้เหมือน Access ตัวเต็มทุกประการณ์ครับ"

??? ตัว Access runtime จะไปมองหาไฟล์ Mdb ที่เราสร้างสมบูรณ์เสร็จแล้วหรือเปล่าครับ ????

สงสัยเพื่อความกระจ่าง, ผมต้องหาทางลงโปรแกรมและศึกษา, จะมองเห็นภาพชัดยิ่งขึ้น, ขอบพระคุณล่วงหน้าอีกครั้งครับ

ทดสอบดีกว่าครับ อธิบายได้เท่านี้แหละครับ ตอบอีกก็คงเป็นคำเดิมๆอีก
ลองเครื่องที่บ้านดูก่อนก็ได้ครับ ส่วนถ้าต้องการต่อกับระบบที่ทำงาน ก็น่าจะทำเรื่องขอทดสอบได้นะครับ เพราะถึงหาข้อมูลมากแค่ไหนสุดท้ายก็คงต้องทดสอบก่อนอยู่ดี

ถ้าองค์กรคุณจะใช้กับฐานข้อมูลที่สำคัญ ผมก็คงแนะนำให้ใช้ตัวเต็มดีกว่าครับ การประหยัดโดยการใช้ Access runtime มันไม่ได้รับประกันอะไรเลยนะครับ เพราะผมจำได้ว่าเคยอ่านเจอว่า ไมรโครซอฟเค้าไม่ได้รับรอง หรือไม่รับตอบคำถามใดๆ กับ Access runtime นะครับ ให้แค่แจ้งปัญหาเท่านั้น ผมใช้จึงมีหน้าที่ต้อง ทดสอบ แล้วก็ทดสอบๆๆ ให้แน่ใจว่าใช้ได้ตรงความต้องการ เพราะถือว่าเป็น Free ware (คนใช้ไม่ได้เป็นลูกค้าเขา) เขาจะเลือกพัฒนาเมื่อไรก็ได้ห้ามว่ากัน
แล้วถ้าถามว่าเขาทำมาเพื่ออะไร จ้าว Runtime ทั้งหลาย
ก็อาจเพราะเขาทดเสียงบ่นไม่ไหว สำหรับนักพัฒนาซอฟแวร์ของเขา ที่หาว่าเขาผูกขาด ที่ไม่สามารถ Comprise ให้เป็น exe ได้ ลูกค้าจึงต้องเสียเงินสองต่อ คือเสียค่าจ้างคนเขียน และเสียค่าซอฟแวร์อีก ประมาณนี้

ถ้าหากคุณจะลองทดสอบ หลังโหลด Access runtime 2010 ให้โหลด Service Pack 1 ด้วยนะครับ มันมี SP1 มาแก้ Bug นานพอควรแล้ว