PDA

View Full Version : ایجاد جدول در زمان اجرا



Saeed-CANcel
دوشنبه 15 مهر 1392, 01:16 صبح
سلام بر اساتید...:چشمک:

من تو یه برنامه میخوام در زمان اجرا بتونم تو بانکم جدولی ایجاد بشه...
این کار امکان پذیر هس عایا؟؟؟:افسرده:
با Linq با بانکم در ارتباطم...
تموم فیلدهای جدولم از یه نوع bit هستن
راه حلی برای این مشکل وجود داره؟؟؟:متفکر:

pedram.11
دوشنبه 15 مهر 1392, 09:34 صبح
سلام برای ایجاد جدول جدید در دیتابیس میتونید از کوئری استفاده کنی،مثلا برای ایجاد جدول که دارای دوفیلد آیدی و نام هست:
Create Table Table1([ID] AUTOINCREMENT NOT NULL PRIMARY KEY,[Name] VARCHAR(64))
البته AUTOINCREMENT برای دیتابیس اکسس هست و برای sql باید AUTO_INCREMENT نوشته بشه.

Saeed-CANcel
سه شنبه 16 مهر 1392, 02:05 صبح
سلام...
من نتونستم بسازم:اشتباه:
اصلا کدهای شما رو نمیدونم جای درستی نویشتم یا نه...
من اینجوری نوشتم ک نشد!!!
اول یه اتصال به بانکم ایجاد کردم

Var db=new mydata_Linq();

بعد هر کار کردم ک این کوئری ک شما گفتین رو بنویسم نشد ک نشد...
با استفاده از تکنولوژی linq توضیح بدین لطفا...
.
.
.
کتابی نیس که همه موارد رو در این مورد (بانک اطلاعاتی) گفته باشه؟؟؟

pedram.11
سه شنبه 16 مهر 1392, 08:23 صبح
این کوئری که بنده بهتون دادم برای استفاده مستقیم بود نه با linq، متاسفانه من با linq زیاد کار نکردم اما فکر نمیکنم بشه، مگر اینکه خودتون در کلاسش برای ایجاد جدول معرفه بنویسید.
در SQL برای ایجاد جدول جدید(دارای دو ستون ID و Name) کوئری به اینصورت هست:
Create Table Table1([ID] INT IDENTITY(1,1) NOT NULL PRIMARY KEY,[Name] NVarchar(64))
که بعد از اتصال به دیتابیس با استفاده از SqlCommand و دستور ExecuteNonQuery کوئری رو اجرا میکنید و بعد جدول ساخته میشه.

Reza_Yarahmadi
سه شنبه 16 مهر 1392, 09:21 صبح
میتونید بصورت زیر این کار رو انجام بدید
YourDataContext context = new YourDataContext();
context.ExecuteCommand("CREATE TABLE YourTableName(ID INT IDENTITY(1,1), Name NVARCHAR(100),....)");