PDA

View Full Version : نمایش نام جدول های بانک در combobox



rerzaz
یک شنبه 09 شهریور 1393, 14:17 عصر
سلام دوستان عزیز

من می خوام اسم جدول های بانک رو توی یه کمبوباکس نمایش بدم چکار باید انجام بدم

دوم اینکه اگر از کمبو باکس یکیو انتخاب کرد توی کد query هم نمایش داده شده
مثلال :


string query = "select * from t2"

الان اسم جدول من t2 هست من می خوام این به صورت انتخابی از کمبو باکس شه

محمد آشتیانی
یک شنبه 09 شهریور 1393, 14:49 عصر
سلام
این متد رو بنویس و هرجا خواستی فراخوانیش کن ، باید اسم کمبوباکس رو بهش پاس بدی ، ضمن اینکه کانکشن استرینگ رو بر اساس سیستم خودت ویرایش کن


private void GetTableNames(ComboBox cbo)
{
SqlConnection sqlcon = new SqlConnection();
SqlCommand sqlcmd = new SqlCommand();
SqlDataReader sqldr;
DataTable dt = new DataTable();
sqlcon.ConnectionString = "Data Source=127.0.0.1;Initial Catalog=YourDB;Persist Security Info=True;User ID=sa;Password=1";
sqlcmd.Connection = sqlcon;
sqlcon.Open();
sqlcmd.CommandText = "SELECT name FROM sys.tables";
sqldr = sqlcmd.ExecuteReader();
dt.Load(sqldr);
sqlcon.Close();
cbo.DataSource = dt;
cbo.DisplayMember = "name";
}


فراخوانیش اینجوری میشه (این الان comboBox1 رو پر میکنه)

GetTableNames(comboBox1);


موفق باشید.

rerzaz
یک شنبه 09 شهریور 1393, 15:10 عصر
ارتباط با بانک من از طریق oledb هست نمی شه با oledb توضیح دهید

forodo
یک شنبه 09 شهریور 1393, 15:21 عصر
ارتباط با بانک من از طریق oledb هست نمی شه با oledb توضیح دهید
هرجا sql دیدی به جاش بذار oledb.
مثلاً به جای sqlConnection بذار oledbConnection.
کانکشن استرینگ هم که فرق داره واسه اکسس.

rerzaz
یک شنبه 09 شهریور 1393, 15:44 عصر
به جای sys باید اسم چی رو بزارم به این گیر می ده؟
وقتی اجرا می کنم این خطا رو میده :

An unhandled exception of type 'System.Data.OleDb.OleDbException' occurred in System.Data.dll


Additional information: Could not find file 'E:\C#‎‎‎‎\Add Barcode\Add Barcode\bin\Debug\sys.mdb'.


کد من هم هست :


OleDbConnection OleDbcon = new OleDbConnection();
OleDbCommand OleDbcmd = new OleDbCommand();
OleDbDataReader OleDbdr;
DataTable dt = new DataTable();
OleDbcon.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:18415.accdb;" + "Persist Security Info=False";
OleDbcmd.Connection = OleDbcon;
OleDbcon.Open();
OleDbcmd.CommandText = "SELECT name FROM 18415.tables";
OleDbdr = OleDbcmd.ExecuteReader();
dt.Load(OleDbdr);
OleDbcon.Close();
cbo.DataSource = dt;
cbo.DisplayMember = "name";

forodo
یک شنبه 09 شهریور 1393, 15:56 عصر
ببینید ایناست:
SQL: SELECT name FROM sysobjects WHERE xtype= 'U'

ORACLE: SELECT * FROM user_tables

ACCESS:SELECT Name FROM MSysObjects WHERE (Name Not Like "MSys*") AND (Type In (1,4,6)) ORDER BY Name

rerzaz
یک شنبه 09 شهریور 1393, 16:05 عصر
ببینید ایناست:
SQL: SELECT name FROM sysobjects WHERE xtype= 'U'

ORACLE: SELECT * FROM user_tables

ACCESS:SELECT Name FROM MSysObjects WHERE (Name Not Like "MSys*") AND (Type In (1,4,6)) ORDER BY Name

ممنون از راهنمایت می خواستم بدونم که msysobjects و msys* دقیقن چی هستن ؟

ghasem110deh
سه شنبه 09 دی 1393, 10:56 صبح
سلام شاید سوال من خیلی به تاپیک ربط نداشته باشه ، گفتم یه تاپیک جدید نزنم !
------------
من اطلاعات یه فیلد از جدول رو تو کمبوباکس آوردم ...
چطور اطلاعات تکراری رو حذف کنم ؟
مثلا توی جدول اسم - قاسم - چهار بار اومده با نام خانودگی متفاوت ، ولی من نام رو میخوام (الان توی لیست کمبوباکس) چهار تا قاسم هست ...