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 > VB.Net ขอความช่วยเหลือ ในการดึงข้อมูลจาก Access มาเก็บในอาเรย์โดยใช้ For



 

VB.Net ขอความช่วยเหลือ ในการดึงข้อมูลจาก Access มาเก็บในอาเรย์โดยใช้ For

 



Topic : 113110



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



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




Code (VB.NET)
    Dim dr As OleDbDataReader
        Dim code As String = TextBox1.Text
        Dim s As String = "select * from DB_Rent where m_id='" & code & "' "
        Dim b As Integer
        Dim btm() As Button = {Button1, Button2, Button3, Button4, Button5, Button6}
        dr = Executereader(s)
        dr.Read()
        For a = 0 To 100
            K(a, 1) = dr.Item("ID_book").ToString
        Next


คือว่าผมติดตรงเวลาวนลูป for แล้วค่าที่ได้จากดาต้าเบสมาเก็บในอาเรย์ครับ แต่ว่าพอวนรอบที่2นั้นค่าที่เอามาจากดาต้าเบสก็ยังเป็นค่าตัวแรกที่มาเก็บในตอนแรกครับ

เช่น : K(1,1) = 1000 แต่ค่าที่ได้คือ K(1,1) = 1000 K(2,1) = 2100 K(2,1) = 1000



รบกวนทุกท่านช่วยหน่อยครับว่าควรแก้ยังไงดี



Tag : .NET, Ms Access, MySQL, VB.NET, VS 2010 (.NET 4.x), Windows









ประวัติการแก้ไข
2014-12-08 22:33:48
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-12-08 22:31:47 By : totalism53 View : 1403 Reply : 20
 

 

No. 1



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



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

dr.Item("ID_book").ToString
มันได้ค่ามาแถวเดียวรึป่าวครับ








ประวัติการแก้ไข
2014-12-09 00:12:15
2014-12-09 00:19:59
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-09 00:09:58 By : zarooman
 


 

No. 2



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



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

ทำให้ใหม่
Code (VB.NET)
        Dim da As New OleDbDataAdapter
        Dim ds As New DataSet
        Dim bstmp As New BindingSource
        Dim code As String = Textbox1.Text
        Dim s As String = "select * from DB_Rent where m_id='" & code & "' "
        Dim b As Integer
        Dim btm() As Button = {Button1, Button2, Button3, Button4, Button5, Button6}
        da.SelectCommand = New OleDbCommand(s, Conn)
        da.Fill(ds, "table")
        bstmp.DataSource = ds.Tables("table")
        Dim K(ds.Tables("table").Rows.Count - 1, 1)
        For a = 0 To ds.Tables("table").Rows.Count - 1
            ReDim Preserve K(a, 1)
            K(a, 1) = bs(a)("ID_book").ToString
        Next



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

 

No. 3

Guest


ลองนำไปใช้แล้วเกิดเออเร่อครับ
Code (VB.NET)
 Dim (K(ds.Tables("table").Rows.Count - 1, 1))

อันนี้ขึ้นว่า Identifier expected.

Code (VB.NET)
K(a, 1) = bs(a)("ID_book").ToString

อันนี้ขึ้นนว่า 'bs' is not declared. It may be inaccessible due to its protection level.

ขอบคุณมากครับ แต่ยังสับสนอยู่เหมือนกันเดี๊ยวจะลองศึกษาดูนะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-09 03:48:48 By : totalism53
 


 

No. 4

Guest


คำถามคือ ถ้าจะใช้ data reader ทำไมไม่ใช้ while loop ???

อีกคำถามคือ ถ้าจะเก็บลง array ทำไมไม่เก็บลง datatable ไปเลยล่ะ ???
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-09 07:40:25 By : ห้ามตอบเกินวันละ 2 กระทู้
 


 

No. 5



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



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

String = "select * from DB_Rent where m_id='" & code & "' "
rows ได้ กี่ rows ครับ

Code (VB.NET)
        For a = 0 To ds.Tables("table").Rows.Count - 1
            ReDim Preserve K(a, 1)
            K(a, 1) = ds(a)("ID_book").ToString 'ds ไม่ใช่ bs
        Next



ประวัติการแก้ไข
2014-12-09 09:30:18
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-09 09:24:31 By : lamaka.tor
 


 

No. 6

Guest


ฮ่วย แต่ละคน ไปกันใหญ่แระ

ถ้าเก็บลง datatable แล้ว ไม่ต้องวนลูปลง array แล้ว เอาไปใช้เลย

จะมาเอาลง array อีกทำไม เสียเวลา เปลือง mem อีก
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-09 09:41:45 By : ห้ามตอบเกินวันละ 2 กระทู้
 


 

No. 7



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



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

งงเหมือนกันว่าทำไมเอาไปลงอารเรย

ตอบความคิดเห็นที่ : 5 เขียนโดย : lamaka.tor เมื่อวันที่ 2014-12-09 09:24:31
รายละเอียดของการตอบ ::
bs ถูกแล้วท่าน


ตอบความคิดเห็นที่ : 3 เขียนโดย : totalism53 เมื่อวันที่ 2014-12-09 03:48:48
รายละเอียดของการตอบ ::
ประกาศตัวแปล K อย่างงี้ครับ
Dim K(ds.Tables("table").Rows.Count - 1, 1)

ส่วน 'bs' is not declared. It may be inaccessible due to its protection level.
คุณประกาศตัวแปล bs as new bindingsorce ไว้ข้างบนรึยัง แล้วเอา bs.DataSource = ds.Table("table") หน่ะ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-09 10:27:25 By : zarooman
 


 

No. 8



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



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

ประมาณนี้น๊

http://stackoverflow.com/questions/16942380/datatable-to-array-of-arrays
http://www.codeproject.com/Questions/711767/How-to-Convert-DataTable-To-ArrayList
http://stackoverflow.com/questions/3573618/c-datatable-to-arraylist
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-09 10:34:09 By : lamaka.tor
 


 

No. 9



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



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


ตอนนี้ เวลากดปุ่มแล้วเออเร่อ ขึ้นมาว่า 'Redim' can only change the rightmost dimension ไม่รู้จะต้องทำยังไงต่อครับ

เห็นหลายๆท่านบอกให้ใช้ Datatable พอดีไม่มีความรู้เลยเดี๊ยวจะลองไปศึกษาก่อนครับ

ขอบคุณทุกท่านมากครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-10 14:54:10 By : totalism53
 


 

No. 10



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



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


รบกวนพี่ๆช่วยแนะนำ วิธีใช้ datatable หน่อยได้ไหมครับ หาอ่านในเว็ปแล้วยังไม่เข้าใจเลย

มีแต่ที่ใช้กับ sql ทั้งนั้น พอดีผมใช้กับ access หน่ะครับ

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


 

No. 11



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



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

http://stackoverflow.com/questions/16942380/datatable-to-array-of-arrays
http://www.codeproject.com/Questions/711767/How-to-Convert-DataTable-To-ArrayList
http://stackoverflow.com/questions/3573618/c-datatable-to-arraylist
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-10 22:09:23 By : lamaka.tor
 


 

No. 12



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



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


คือผมต้องสร้าง datatable ขึ้นมาก่อนใช่ไหมครับ

ไม่ทราบว่าจะต้องสร้างยังไง หรือดึงข้อมูลจาก database มายังไงอะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-10 22:46:11 By : totalism53
 


 

No. 13



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



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

Code (VB.NET)
Dim da As New OleDbDataAdapter
Dim ds As New DataSet
Dim bstmp As New BindingSource
Dim code As String = Textbox1.Text
Dim s As String = "select * from DB_Rent where m_id='" & code & "' "
Dim b As Integer
Dim btm() As Button = {Button1, Button2, Button3, Button4, Button5, Button6}
da.SelectCommand = New OleDbCommand(s, Conn)
da.Fill(ds, "table")'นี่ก็ถือว่าสร้าง datatable มาแล้วครับ ชื่อ table
bstmp.DataSource = ds.Tables("table") '
Dim K(ds.Tables("table").Rows.Count - 1, 1)
For a = 0 To ds.Tables("table").Rows.Count - 1
    ReDim Preserve K(a, 1)
    K(a, 1) = bs(a)("ID_book").ToString
Next

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-11 07:40:40 By : lamaka.tor
 


 

No. 14



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



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

Code
Dim da As New OleDbDataAdapter Dim ds As New DataSet Dim s As String = "select * from DB_Rent where m_id='" & code & "' " Dim btm() As Button = {Button1, Button2, Button3, Button4, Button5, Button6} da.SelectCommand = New OleDbCommand(s, Textbox1.Text) da.Fill(ds, "table")'นี่ก็ถือว่าสร้าง datatable มาแล้วครับ ชื่อ table Dim arr As String() = (From myRow In ds.Tables(0).AsEnumerable Select myRow.Field(Of String)("ID_book")).ToArray เห็นว่ามันสั้นดี แต่ผมยังไม่เคยลอง http://stackoverflow.com/questions/18766270/generate-an-array-from-dataset-vb-net



ถ้าเห็นว่าที่ผ่านมามันซับซ้อนไป
งั้นผมก็เสนอโค๊ดแบบบ้านๆ
ประเด็นคือต้องการ datatable to array ใช่ไม๊
งั้นโค๊ดแบบบ้านๆนี่เลย
1. สร้าง datatable โดย da.Fill(ds, "table")'
2. เพิ่มข้อมูลเข้า array

Dim array As New ArrayList For Each row In ds.Tables(0).Rows array.Add(row("ID_book").ToString) Next row

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-11 07:51:31 By : lamaka.tor
 


 

No. 15



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



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


ีคือผมทำระบบเกี่ยวกับ การยืม-คืนครับ

ที่ทำอยู่คือให้ค้นหาด้วยรหัสผู้เช่าที่ textbox1 แล้วที่ทำอยู่คือ จะให้มันไปเช็คใน ฐานข้อมูลการเช่าครับ โดยทุกครั้งที่กดเช่านั้นจะมีสถานะคือเลข1 เลยคิดว่าจะใช้ array ครับ โดยที่ จะเป็น k(รหัสหนังสือ,สถานะ) โดยทุกครั้งจะให้มันวนเช็คครับว่าคืนหรือยัง แต่ตอนนี้ติดตรงที่ทำ array ไม่ได้ครับ เคยใช้แต่ใน C++ ไม่เคยใช้ array ใน vb ครับพอดีเพิ่งเริ่มเขียน

เลยไม่รุ้ว่าจะต้องทำตรงไหนต่อ


ขอบคุณที่ให้คำแนะนำและช่วยเหลือครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-11 11:24:40 By : totalism53
 


 

No. 16



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



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


ตอบความคิดเห็นที่ : 14 เขียนโดย : lamaka.tor เมื่อวันที่ 2014-12-11 07:51:31
รายละเอียดของการตอบ ::
แล้วพอจะมีคำสั่งไหนที่พอเช็คได้ครับ ว่า ข้อมูลได้เข้าไปอยู่ในนั้นแล้ว

ขอบคุณครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-11 11:30:31 By : totalism53
 


 

No. 17



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



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

ตอบความคิดเห็นที่ : 16 เขียนโดย : totalism53 เมื่อวันที่ 2014-12-11 11:30:31
รายละเอียดของการตอบ ::
โค๊ดแบบบ้านๆก็ loop ประมาณ For หรือไม่ก็ For Each ครับ
ประเด็นคือ
วน loop ใน array ว่ามีข้อมูลที่จะเพิ่มใหม่รึไม่ ถ้ามีก้ไม่เพิ่มไม่มีก็เพิ่มเข้าไป




ประวัติการแก้ไข
2014-12-11 12:01:59
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-11 11:56:21 By : lamaka.tor
 


 

No. 18



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



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


ผมว่าอย่างงี้น่าจะยากไป ไม่ทราบว่า เราจะสามาถค้นหาข้อมูลจากช่อง textbox แล้วให้ขึ้นโชว์ใน datagridview ไหมครับ

สมมติว่า ใส่รหัสที่ต้องการค้นหาแล้วกดค้นหา

ข้อมูลของรหัสนั้นก็จะขึ้นใน datagridview ครับ

เพราะเดี๊ยวจะใช้ bindingnavigator ในการแก้ไข บันทึก น่าจะง่ายกว่าหน่ะครับ

ขอบคุณมากครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-12 04:32:51 By : totalism53
 


 

No. 19



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



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

ตอบความคิดเห็นที่ : 18 เขียนโดย : totalism53 เมื่อวันที่ 2014-12-12 04:32:51
รายละเอียดของการตอบ ::
BindingSource มี filter อยู่ครับ
Dim bstmp As New BindingSource
****
****
set BindingSource ให้ใช้งานได้

เมื่อจะใช้ filter ก็
bstmp.Filter = "m_id='" & code & "' "
Filter ก็เหมือน select มาครับแค่มันเป็นการ select จาก select
คำค้น
vb.net BindingSource filter
vb.net BindingSource select
ขัอมูลพวกนี้มีเยอะครับลองค้นดู

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-12 08:17:29 By : lamaka.tor
 


 

No. 20



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



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


พอดีเพิ่งกลับมาจากต่างจังหวัดครับ

ขอบคุณมากครับ เดี๊ยวจะลองศึกษาดูก่อนถ้ามีปัญหา รบกวนให้คำแนะนำด้วยนะครับ

ขอบคุณครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-14 09:37:37 By : totalism53
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : VB.Net ขอความช่วยเหลือ ในการดึงข้อมูลจาก Access มาเก็บในอาเรย์โดยใช้ For
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 04
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 อัตราราคา คลิกที่นี่