Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > .NET Framework > Forum > ถ้าต้อง select ข้อมูลหลายตาราง พร้อมนำข้อมูลไปคำนวณ ควรใช้วิธีไหนดีครับ



 

ถ้าต้อง select ข้อมูลหลายตาราง พร้อมนำข้อมูลไปคำนวณ ควรใช้วิธีไหนดีครับ

 



Topic : 113398



โพสกระทู้ ( 84 )
บทความ ( 0 )



สถานะออฟไลน์




จากเดิมผมเขียนอยู่ใน Private Sub Form1_Load ทั้งหมดเลยครับ ทำให้ตัวแปรมั่วมาก งงไปหมดเวลาจะกลับมาแก้ไข

ผมจึงมีแนวคิดว่าจะปรับปรุงทำเป็น Function แทน โดยแยกการ delect ข้อมูล ออกเป็นแต่ละ Function เลย แล้วส่งค่า result ที่ต้องใช้ในเงื่อไขการ select ของ Function ถัดไป

แต่ติดปัญหาตรงที่ผม ผมมือใหม่ ไม่เคยใช้ Function มาก่อน จึงส่งค่าตัวแปรใน Function หนึ่ง ไปอีก Function หนึ่งไม่ได้ ไม่ทราบว่าต้องทำยังไงครับ

ตัวอย่าง Code เช่น (VS2012)

Public Class Form1


Private Function employee()
     Dim numArray As Integer
     Dim Eid(numArray) As String
     Dim name(numArray) As String
     Dim Lname(numArray) As String

     === คำสั่ง select และเก็บค่าที่ select ได้ใด้ตัวแปร ===

     ** ถ้าผมต้องการที่จะส่งค่า Eid(numArray) และ name(numArray) ไปยัง Function department และ Function salary เพื่อเป็นเงื่อไขในการ select ผมต้องทำยังไงครับ**



End Function

Private Function department()

End Function

Private Function salary()

End Function

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
     Call employee()
End Sub
End Class


ก็จะประมาณนี้ ที่ผมติดไว้น่าจะง่ายต่อการแก้ไขภาพหลัง เพราะถ้าจะแก้อะไร ก็หา Function นั้น แล้วเข้าไปแก้เลย จะได้ไม่ไปพันกับที่อื่น

และถ้ามันทำ Function employee เสร็จ แล้วผมจะให้ไปทำ Function salary จากนั้นก็ไปทำ Function department() สึดท้ายกลับมาทำ Private Sub Form1_Load

ผมเขียนแบบนี้ได้ไหมครับ และจะมีผลเสียอะไรไหม

Private Function employee()
     Call salary()
    
End Function

Private Function department()
     Call Form1_Load()
End Function

Private Function salary()
     Call department()
End Function




Tag : .NET, Ms SQL Server 2008, VS 2012 (.NET 4.x)









ประวัติการแก้ไข
2014-12-22 19:03:32
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-12-22 19:03:16 By : tatalas View : 844 Reply : 4
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ลองดูพวก List น่ะครับ มันสามารถจัดเก็บข้อมูลเป็นแบบ Object ของ Class ได้ และควรประกาศตัวแปรไว้บนสุดครับ มันจะสามารถเรียกใช้ในทุก ๆ Method






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-23 09:17:56 By : mr.win
 


 

No. 2



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

http://www.mahamodo.com/Help/VB_NET_2003/VB_NET_2003_Lesson7_Sub.htm
http://www.narisa.com/forums/index.php?showtopic=32873

ที่ทำก็เกือบถูกแล้วครับ
แค่ต้องให้มีการ return ค่าแค่นั้นเอง

Code
Private Sub GetEmployee() Dim numArray As Integer Dim Eid(numArray) As String Dim name(numArray) As String Dim Lname(numArray) As String End Function Private Function department(numArray As Integer) As String() Dim _department(numArray) As String ++ ++ ++ ++ return _department End Function Private Function salary(numArray As Integer) As String() Dim _salary(numArray) As String ++ ++ ++ ++ return _salary End Function Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load Call GetEmployee() End Sub


แค่นี้แหละครับ
แต่อย่างที่พี่วินบอกว่าให้ด็เก็บไว้ใน class แล้วเอามาใช้งานน่าจะดีกว่า
แล้วลองอ่านพวก function,sub ดูครับเวลาใช้งานจะได้ไม่งง
ถ้า metnod ที่ไม่ต้องการ return ก็ควรใช้ sub ดีกว่าครับ
ส่วนตัวไหนต้องการ return ค่อยใช้ functoin.... as .....
ไม่งั้นคนเขียนจะงงเอง(เหมือนตอนนี้ 55555)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-23 09:41:04 By : lamaka.tor
 

 

No. 3



โพสกระทู้ ( 296 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ไม่มีการ Return ค่าน่าจะใช้ Sub ดีกว่า Function นะ
Sub department ให้รับพารามิเตอร์มา Eid(numArray) และ name(numArray)
Code (VB.NET)
 Call department(Eid(numArray),name(numArray) ) 'ใน employee()

Code (VB.NET)
Private Sub department( Eid(numArray),name(numArray) )
 'จะทำอะไรก็ทำ
End Function



ประวัติการแก้ไข
2014-12-23 10:32:37
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-23 10:30:36 By : zarooman
 


 

No. 4



โพสกระทู้ ( 84 )
บทความ ( 0 )



สถานะออฟไลน์


ขอบคุณครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-23 18:50:38 By : tatalas
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ถ้าต้อง select ข้อมูลหลายตาราง พร้อมนำข้อมูลไปคำนวณ ควรใช้วิธีไหนดีครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

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







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 05
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่