dr_csharp
سه شنبه 27 آذر 1386, 09:47 صبح
سلام .
دوستان من یک View دارم که تلفیقی از دو جدول A و B است .
جدول A دارای فیلدهای CompanyID بعنوان PK و CompanyName میباشد .
جدول B دارای فیلدهای CompanyID بعنوان FK و Telephone میباشد .
واضحه که یک Company میتونه چندتا Telephone داشته باشه بنابراین یک رابطه ی یک به چند داریم.من میخوام وقتی کاربر CompanyName وارد میکنه همزمان قادر به وارد نمودن Telephone برای اون Company باشه .
دوستان پیشنهاد داده بودن اینکار با View انجام بشه و یک Trigger روی View تعریف بشه که وقتی در جدول CompanyName ، A رو وارد میکنه همون موقع CompanyID رو بگیره و در جدول B ، تلفن های مربوط به اون CompanyID رو هم وارد کنه .
ممنون میشم اگر نسبت به پیاده سازی این طرح راهنماییم کنید .میخوام بدونم View من چه فیلدهایی باید داشته باشه ، Trigger رو چطور بنویسم و بحث INSERT کجا انجام میشه ؟
مثلا کد زیر رو در نظر بگیرید :
declare @Id int
INSERT INTO A (CompanyName)VALUES('Iran');
SELECT @Id=@@IDENTITY
INSERT INTO B (CompanyID,Tel)VALUES(@Id,'0912')
خوب حالا این میتونه یه StoredProcedure باشه که دوتا پارامتر بگیره ( نام شرکت و شماره تلفن ) و نیازی به View و تریگر و ... نداره . ممنون میشم راهنمایی کنید
دوستان من یک View دارم که تلفیقی از دو جدول A و B است .
جدول A دارای فیلدهای CompanyID بعنوان PK و CompanyName میباشد .
جدول B دارای فیلدهای CompanyID بعنوان FK و Telephone میباشد .
واضحه که یک Company میتونه چندتا Telephone داشته باشه بنابراین یک رابطه ی یک به چند داریم.من میخوام وقتی کاربر CompanyName وارد میکنه همزمان قادر به وارد نمودن Telephone برای اون Company باشه .
دوستان پیشنهاد داده بودن اینکار با View انجام بشه و یک Trigger روی View تعریف بشه که وقتی در جدول CompanyName ، A رو وارد میکنه همون موقع CompanyID رو بگیره و در جدول B ، تلفن های مربوط به اون CompanyID رو هم وارد کنه .
ممنون میشم اگر نسبت به پیاده سازی این طرح راهنماییم کنید .میخوام بدونم View من چه فیلدهایی باید داشته باشه ، Trigger رو چطور بنویسم و بحث INSERT کجا انجام میشه ؟
مثلا کد زیر رو در نظر بگیرید :
declare @Id int
INSERT INTO A (CompanyName)VALUES('Iran');
SELECT @Id=@@IDENTITY
INSERT INTO B (CompanyID,Tel)VALUES(@Id,'0912')
خوب حالا این میتونه یه StoredProcedure باشه که دوتا پارامتر بگیره ( نام شرکت و شماره تلفن ) و نیازی به View و تریگر و ... نداره . ممنون میشم راهنمایی کنید