الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف اضع اسم لجدول في قاعده البينات بحيث يكون متغير وليس ثابت

مغلق
بدأه بدر292 في 18 يونيو 2006 · 9 رد · 842 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

هلا فيكم اخواني

ارجو مساعدتي في كيف انشء جدول في قاعده البياانات بحيث يكون اسم الجدول متغير وليش ثابت

string nameDb = "dd";
myCommand.CommandText = 
				@"CREATE TABLE"+ nameDb +
					@"( DNAME VARCHAR(15),
						DNUMBER INT,
						PRIMARY KEY(DNUMBER))";

تم تعديل هذه المشاركة بواسطة walcom في 24 يناير 2007 في 17:15

#2

السلام عليكم

ممكن توضح شويه

المفروض اي object يبقاله اسم ثابت و وحيد

بس تقدر تعمل rename بس هيبقي فيه مشكله ال references

علي العموم انا مش فهمك

#3

اوكي اشرح اكثر انا اريد اسوي جداول لكن باسامي مختلفه

واسامي الجدول تعتمد على قيم مدخله وليست ثابته اي ان الاسامي غير معروفه عند البرمجه

وشكرااااا

تم تعديل هذه المشاركة بواسطة بدر292 في 18 يونيو 2006 في 13:36

#4

السلام عليكم و رحمة الله و بركاته

أخي العزيز

أنا أرى أنك سألت السؤال و جاوبت على نفسك

الا اذا أنا ما كنتش فاهم قصدك

أرجو الايضاح أكثر

و السلام عليكم و رحمة الله و بركاته

تم تعديل هذه المشاركة بواسطة الفارس الأسود في 18 يونيو 2006 في 14:52

#5

طيب يالغارس الاسود اشرح شرح مفصل :)

انا عندي مجموعه من البطاريات باسامي مختلفه واريد ان اضع كل معلومات جدول اسم الجدول باسم البطاريه التي له

المشكله اسامي البطاريات لبست معروفه عند البرمجه اي انها قيم مجهوله عند تكوين جدول في قاعده البياتات اريد كيف اسوي تكوين جدول بحيث ان اسم الجدول يكون على حسب المستخدم الذي يدخله اي باسم البطاريه التي يريد ادخال معلوماتها في قاعده البيانات وشكرااااااااااا

#6

ماذا تقصد بجدول لكل بطارية

هل تريد عمل جدول لكل نوع من البطاريات لتحتفظ ببياناتها فيه؟؟؟ّ!!!

/index.php?showtopic=35369

اخبرنا ما هى وجهة نظرك اقصد ما الفائدة من العمل بهذه الطريقة

VB.NET and C# Comparison

http://www.harding.edu/fmccown/vbnet_csharp_comparison.html

002.gif

=-=-=-=-=-=-=
ذو العلم يشقى فى النعيم بعلمه .:. واخو الجهالة فى الشقاوة ينعم
=-=-=-=-=-=-=
يا من بدنياه اشتغل . قد غره طول الأمل . فالموت يأتى بغتة . والقبر صندوق العمل
=-=-=-=-=-=-=
ان لم تستطع ان تجد ما تفعله فافعل ما لم تسطع ان تجده

screen_shot_2011-05-19_at_12.44.49_pm.pn

#7

ممتاز ياسولو ووضعت نوع البطاريه كأسم للجدول للتسهيل على الوصول للبطاريه التي اريدها

مثلا البطاريه التي رقمها ff22345

تكون كأسم للجدول لآتعرف عليها بسهوله

وبياناتها تكون داخل الجدول

هل فيه طريقه ادخال لاسم الجدول يدوي اي من المستخدم وليس برمجيا لكي يتسنى

للمدخل ادخال اسامي البطاريات كاسامي للجداول وشكراااااااا

#8

أخي، المشكلة لديك هي مشكلة Design في قاعدة البيانات نفسها، وليست مشكلة برمجية، تخيل معي هذا المثال البسيط:

في قاعدة البيانات الموجودة في الـ SQL Server و اسمها Northwind ستجد فيها جدول اسمه Products، تخيل لو كان هذا الجدول غير موجود و كان بدلاً منه جدول لكل Product !!! يعني لو كان هناك 100 Product (هذا رقم ضئيل) فسوف يكون هناك 100 جدول لكل Product على حدا !! هل تجد هذا منطقياً؟؟ بالبطبع لا.. إذا فما الحل؟؟

الحل بكل بساطة أن توحد كل الخصائص الخاصة بالبطاريات في جدول واحد كما في جدول الـ Products، و كل خاصية بالطبع هي عبارة عن Column في هذا الجدول ليكون كالتالي:

BatteryID		  BatteryName		  BatteryNo.		  BatteryType

أما الطريقة التي تريدها فهي طريقة غير عملية بالمرة و صعبة التنفيذ بدون أي مشاكل.

رأس الحكمة الإيمان بالله

#9

اخى الكريم لم تجبنى على تساؤلى وهى من اين اتيت بهذه الفلسفة لقاعدة البيانات،،، الق نظرة على الرابط فى المشاركة اعلاه

رد الاخ محمد عليم يوضح لك، المغزى،،

على كل حال يمكنك انشاء جداول ديناميكيا فلنفرض انك تستخدم SQL SERVER قم بعمل Stored Procedure لانشاء الجداول له بارميتر تمرر اليه اسم الجدول

لنفترض ان الحقول المكونة للجدول هى fld1,fld2,fld3

الاجراء يكون بهذا الشكل

CREATE PROCEDURE usp_CreateTable
	-- Add the parameters for the stored procedure here
	@TableName nvarchar(50)
AS
BEGIN
	-- SET NOCOUNT ON added to prevent extra result sets from
	-- interfering with SELECT statements.
	SET NOCOUNT ON;

	-- Insert statements for procedure here
	exec ('CREATE TABLE '+@TableName+'([fld1] [nvarchar](10) COLLATE Arabic_CI_AS NOT NULL,[fld2] [nvarchar](100) COLLATE Arabic_CI_AS NOT NULL,[fld3] [nvarchar](100) COLLATE Arabic_CI_AS NOT NULL, CONSTRAINT [PK_'+@TableName+'] PRIMARY KEY CLUSTERED ([fld1] ASC)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]) ON [PRIMARY]')
END
GO

نصيحة: راجع حساباتك قبل تطبيق هذه الفكرة،، لا اعتقد انك اول مرة تتعامل مع قواعد البيانات :D ما الذى جعلك تفكر بهذه الطريقة مجرد فضول لانها اول مرة ارى احد يقوم بالعمل بهذا الشكل (h)

VB.NET and C# Comparison

http://www.harding.edu/fmccown/vbnet_csharp_comparison.html

002.gif

=-=-=-=-=-=-=
ذو العلم يشقى فى النعيم بعلمه .:. واخو الجهالة فى الشقاوة ينعم
=-=-=-=-=-=-=
يا من بدنياه اشتغل . قد غره طول الأمل . فالموت يأتى بغتة . والقبر صندوق العمل
=-=-=-=-=-=-=
ان لم تستطع ان تجد ما تفعله فافعل ما لم تسطع ان تجده

screen_shot_2011-05-19_at_12.44.49_pm.pn

#10

السلام عليكم ....

أظن أخي انك لديك لبس في مفهوم الجدول , ولعلا أخي |محمد عبد العليم| قد فهم ذلك واجابك

وشكرا

هذا الموضوع مغلق.

مواضيع مشابهة