سلام دوستان
من می خواهم table های خاصی را از DataBase پیدا کرده و نام های آن را در یک combobox یا datagridview ذخیره کنم و هر کدام را که خواستم انتخاب کنم
با تشکر
سلام دوستان
من می خواهم table های خاصی را از DataBase پیدا کرده و نام های آن را در یک combobox یا datagridview ذخیره کنم و هر کدام را که خواستم انتخاب کنم
با تشکر
آخرین ویرایش به وسیله anooshiran : چهارشنبه 24 بهمن 1386 در 12:13 عصر دلیل: اشتباه نوشتن
دوست عزیز با یک همچین کدی
For Each t As DataTable In my_dataset.Tables
Me.ComboBox1.Items.Add(t.TableName)
Next
با عرض تشکر
اگر امکان دارد برایم توضیح دهید :
من چند دیتا بیس دارم و می خواهم هرکدام از دیتابیس ها را جستجو کنم تا نام فایل ها را پیدا کنم
در ضمن میخواهم فایل هایی را در کمبو باکس بریزک که با مثلا BB شروع می شود.
با تشکر
می توانید برای هر دیتابیس یک حلقه مثل کد بالا در نظر بگیری و ان را جستجو کنی
برای سوال دوم کافی است یک شرط اضافه کنی مثلا این
Dim my_dataset As DataSet
For Each t As DataTable In my_dataset.Tables
If t.TableName.Substring(0, 2) = "bb" Then
Me.ComboBox1.Items.Add(t.TableName)
End If
Next
با سلام آقای غفوری
من کد هایی را که نوشته ای در برنامه گذاشتم ولی مشکل این است که این پیام خطا را می دهد
NullReferencesException Was Unhandled
در ضمن اسم database من BasisInfo است و می خواهم تمام table های را که با "'00-00" شروع می شود را در combobox بریزم.
اگر برایتان زحمتی نیست لطفا کد کامل آن را با ذکر نام Database من بنویسید.
سلام به همه دوستان
هنوز نتوانستم جوابی برای مشکلم پیدا کنم. منتظر راهنماییی دوستان هستم
دوست عزیز شما باید بجای my_dataset نام دیتاست خود را قرار بدهید کدی که من نوشتم قطعا خطا می دهد چون در my_dataset جدولی وجود ندارد اگر این کار را انجام دادید بگویید دقیقا در چه خطی این خطا را میدهد و ان خط را هم این جا بنویسید
سلا آقای غفوری
شاید من نتوانسته ام منظور خود را شفاف بیان کنم.
من یک database را با کد ایجاد می کنم و همچنین table هایی را با کد در درون این database ایجاد می نمایم.
حال در قسمتی از برنامه نیاز دارم کهTable جدیدی ایجاد کنم و برای نام گذاری این Table نیاز دارم که نام Table های موجود در databse را خوانده و در درن array یا combobox یا هر شی مشابه ای بریزم.و با توجه به نام ها آنها نام table جدید را انتخاب کنم.
بحث اصلا بر سر dataset نیست . من اشتیاها به جای database نوشته بودم dataset
با تشکر
انوش
سلام
با اجازه جناب غفوری ...
در مورد dataset که کد آقای غفوری است، برای database هم میتوانید از کد زیر استفاده کنید.
کد زیر گمانم ساده ترین راه برای انجام عمل فوق باشد.
Me.ComboBox1.DisplayMember = "TABLE_NAME"
Using dbCon As New System.Data.SqlClient.SqlConnection("CONNECTIONSTRING")
dbCon.Open()
Me.ComboBox1.DataSource = dbCon.GetSchema("Tables")
End Using
امیدوارم شما به جای CONNECTIONSTRING مقدار معتبر جاری بانک خودتان را وارد نمایید.
آقای H2 سلام
کد شما درست عمل می نماید و بخش عظیمی از مشکل مرا حل نمود.
Me.ComboBox1.DisplayMember = "TABLE_NAME"
Using dbCon As New System.Data.SqlClient.SqlConnection("CONNECTIONSTRING")
dbCon.Open()
Me.ComboBox1.DataSource = dbCon.GetSchema("Tables")
End Using
حال اگر امکان دارد برایم توضیح دهید که چگونه می توان Table های خاصی را که مثلا با حرف 'B' شروع می شوند در combobox قرار داد.
با تشکر فراوان
متد GetSchema یک DataTable برمیگردونه . حالا شما می تونید بر این DataTable توسط یک DataView فیلتر اعمال کنید . (با استفاده از خاصیت FilterRow)
این هم کد
Me.ComboBox1.DisplayMember = "TABLE_NAME"
Using dbCon As New System.Data.SqlClient.SqlConnection("connection")
dbCon.Open()
Dim view As DataView = dbCon.GetSchema("Tables").DefaultView
view.RowFilter = "TABLE_name LIKE '00-00%'"
Me.ComboBox1.DataSource = view
End Using