ورود

View Full Version : کمک در مورد نوشتن چند شماره تلفن در یک رکورد



oliya24
چهارشنبه 17 فروردین 1390, 20:14 عصر
سلام دوستان گرامی خسته نباشید من یه جدول دارم که 2 فیلد با نام :نام کمپانی و شماره تلفن کمپانی داره


خوب اکثر کمپانی ها هم 2 خط تلفن دارند و حال اگر من بخوام 2 شماره رو در یک رکورد درج کنم اس کیوال سرور به من ERROR میده برای اینکه بتونم با خط فاصله این 2 شماره رو از هم جدا کنم باید از چه کدی استفاده کنم

این رو هم بگم که در یک تاپیک دیگر یکی از دوستان هم همین مشکل رو داشت و یکی از دوستان هم کدی دادن که من نتونستم اون رو درست اجرا کنم و بهتر بگم کمی گنگ بود

s.Jabbari
چهارشنبه 17 فروردین 1390, 22:15 عصر
سلام
میتونی یه جدول اضافه کنی که کد شرکت کلید خارجی هست اونجا و با استفاده از اون N تا شماره تلفن اضافه کرد

oliya24
چهارشنبه 17 فروردین 1390, 22:18 عصر
خیلی ممنون اما میخوا هم بین 2 شماره یه فاصله ایجاد کنم فقط همین !!!!

محمد سلیم آبادی
پنج شنبه 18 فروردین 1390, 05:13 صبح
سلام دوستان گرامی خسته نباشید من یه جدول دارم که 2 فیلد با نام :نام کمپانی و شماره تلفن کمپانی داره


خوب اکثر کمپانی ها هم 2 خط تلفن دارند و حال اگر من بخوام 2 شماره رو در یک رکورد درج کنم اس کیوال سرور به من ERROR میده برای اینکه بتونم با خط فاصله این 2 شماره رو از هم جدا کنم باید از چه کدی استفاده کنم

این رو هم بگم که در یک تاپیک دیگر یکی از دوستان هم همین مشکل رو داشت و یکی از دوستان هم کدی دادن که من نتونستم اون رو درست اجرا کنم و بهتر بگم کمی گنگ بود
سلام،
اگر نوع داده ی ستون "شماره تلفن" از نوع رشته ای باشه هنگام درج چند شماره که با کاراکتر خط تیره از هم تفکیک شدن مشکلی نباید پیش بیاد.

oliya24
پنج شنبه 18 فروردین 1390, 11:32 صبح
چرا بازم همین طور هست!!!

محمد سلیم آبادی
پنج شنبه 18 فروردین 1390, 11:38 صبح
الان data type ستونی که لیست شماره تلفن ها رو داخل درج می کنید چیه؟
موقع درج چه error ای میده متنشو ارسال کنید

Galawij
پنج شنبه 18 فروردین 1390, 11:47 صبح
دوست عزیز من
تحلیل شما از این رابطه غلط است. شما گفتید دو خط تلفن داشته باشد، حالا من می گم اگه موبایل باشه چی؟ اگه شماره فکس اضافه بشه چی؟
بهترین روش اینه که یک جدول جدا برای انواع شماره های تماس (ثابت، همراه، نمابر و...) تعریف کنید و بعد یک جدول دیگه برای شماره های تماس مربوط به شرکت ایجاد کنید حالا از جدول شرکت و جدول انواع شماره های تماس به این جدولتون ارتباط برقرا می کنید(یک رابطه چند به چند) حالا دیگه می تونید برای یک شرکت خاص n تا شماره تماس نگهداری کنید.

oliya24
پنج شنبه 18 فروردین 1390, 11:50 صبح
نوع ستون از نوع varchar و خطاایی که موقع درج دستور میده اینه
there are fewer columns in the insert statement than values specified in the values clause. the number of values in the values clause must match the number of columns specifide in the insert statement.
البته این جدول یک ستون به نام name و یک ستون به نام tel دارد

محمد سلیم آبادی
پنج شنبه 18 فروردین 1390, 12:00 عصر
دستور insert ای که نوشتین مشکل داره. تعداد مقادیری که با کاما در ماده VALUES از هم تفکیک شدن با لیست ستون هایی که در INSERT نوشتین جور در نمیاد یعنی شما باید چیزی شبیه به این نوشته باشین که غلط:

INSERT INTO TableName (tel) VALUES ('ali, '163546546-6546546)

دو کار می تونید بکنید یکی اینکه بعد از نام جدول در دستور insert لیست ستونهایتون رو مشخص نکنید و در VALUES طبق ترتیب ستونهای جدولتون مقدار درج کنید. مثلا

INSERT INTO TabeName VALUES('ali','654654')

یا اینکه ستون name هم به لیستون اضافه کنید یعنی:

INSERT INTO TableName (Name, Tel) ....

oliya24
پنج شنبه 18 فروردین 1390, 12:01 عصر
بدم نمیگید خوب من یه تازه وارد به دیتابیس هستم اگر میشه برای اینکه بتوانم این حرف رو عملی کنم کمک دقیقتر و ریز تری به من بکنید ممنونتان میشم

محمد سلیم آبادی
شنبه 20 فروردین 1390, 12:40 عصر
بدم نمیگید خوب من یه تازه وارد به دیتابیس هستم اگر میشه برای اینکه بتوانم این حرف رو عملی کنم کمک دقیقتر و ریز تری به من بکنید ممنونتان میشم
جدی میگین؟!
من که تا اونجایی که لازم بود توضیح دادم. بدم نمی گید شاید این مطالب هم بتونه بطور خیلی دقیق تر کمکتون کنه:
http://www.simple-talk.com/sql/learn-sql-server/working-with-the-insert-statement-in-sql-server/
http://msdn.microsoft.com/en-us/library/aa933206%28v=sql.80%29.aspx