نمایش نتایج 1 تا 11 از 11

نام تاپیک: مشکل با مقداردهی به کلیداصلی

  1. #1

    مشکل با مقداردهی به کلیداصلی

    من یک سوالی دام
    این کد sp من
    ALTER PROCEDURE [dbo].[AddIn]
    @id int,
    @city nvarchar(50),
    @age float
    AS
    SET IDENTITY_INSERT Info ON;
    INSERT INTO Info (id,city,age)
    VALUES (@id,@city,@age)
    SET IDENTITY_INSERT Info OFF;
    RETURN
    حالا
    این هم کد سی شارپ دکمه add
     SqlConnection conn = new SqlConnection("Data Source=localhost;Initial Catalog=Test1;Integrated Security=True");
    conn.Open();
    SqlCommand cmd = new SqlCommand("AddIn", conn);
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.Parameters.AddWithValue("@id", SqlDbType.Int).Value= "";
    cmd.Parameters.AddWithValue("@city", SqlDbType.NVarChar).Value = TextCity.Text.Trim();
    cmd.Parameters.AddWithValue("@age", SqlDbType.Float).Value = TextAge.Text.Trim();
    cmd.ExecuteNonQuery();
    MessageBox.Show("عملیات با موفقیت انجام شد", "پیام",MessageBoxButtons.OK,MessageBoxIcon.Inf ormation);
    conn.Close();
    this.Close();

    حالا من یک مشکلی دارم
    id من به صورت خودکار شماره 1 - 2 - و... را وارد می کنند
    نمی دانم چطور با این قسمت برخورد کنم هر کاری می کنم هر روشی می روم از قسمت id اخطار می گیرد
    میشه بفرماید کجای کد باید اصلاح کنم

  2. #2

    نقل قول: مشکل با null ردیف

    سلام شما وقتی id رو روی اتوماتیک قرار میدید نباید برای id دستور ذخیره بنویسید چون شما دارید تو جای که از قبل اطلاعات هستش اطلاعات قرار میده و به همین علت سیستم به شما اجازه نمیده دستور مربوط به id رو حذف کن این دستور رو
    cmd.Parameters.AddWithValue("@id", SqlDbType.Int).Value= "";

    و باقی دستور ها بمونن و سیستم بدون مشکل اطلاعات رو ذخیره میکنه و خودش شماره ها رو میزنه و خطای هم نمیده

  3. #3

    نقل قول: مشکل با null ردیف

    سلام
    تشکر باز هم مشکل داره
    Additional information: Procedure or function 'AddIn' expects parameter '@id', which was not supplied.

  4. #4

    نقل قول: مشکل با null ردیف

    An unhandled exception of type 'System.Data.SqlClient.SqlException' occurred in System.Data.dll

    Additional information: Procedure or function 'AddIn' expects parameter '@id', which was not supplied.

  5. #5

    نقل قول: مشکل با null ردیف

    سلام یه لطفی کن تموم کد ها رو بزار توی try catch بعد یه متغیر string تعریف کن و توی قسمت catch متغیری که بهت گفتم رو با این کد که پایین مینویسم پر کن بعد بزار اینجا تا ببینم مشکل چیه

    catch(excpetion ex)
    {
    string a=ex.message;
    }

  6. #6

    نقل قول: مشکل با null ردیف

    سلام انجام دادم
    کد سی شارپ add
    :
            private void Bsave_Click(object sender, EventArgs e)
    {
    try
    {
    SqlConnection conn = new SqlConnection("Data Source=localhost;Initial Catalog=Test1;Integrated Security=True");
    conn.Open();
    SqlCommand cmd = new SqlCommand("AddIn", conn);
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.Parameters.AddWithValue("@id", SqlDbType.Int);
    cmd.Parameters.AddWithValue("@city", SqlDbType.NVarChar).Value = TextCity.Text.Trim();
    cmd.Parameters.AddWithValue("@age", SqlDbType.Float).Value = TextAge.Text.Trim();
    cmd.ExecuteNonQuery();
    MessageBox.Show("عملیات با موفقیت انجام شد", "پیام",MessageBoxButtons.OK,MessageBoxIcon.Inf ormation);
    conn.Close();
    this.Close();

    }
    catch (Exception error)
    {
    MessageBox.Show(error.Message);


    }


    sp
    ALTER PROCEDURE [dbo].[AddIn]
    @id int,
    @city nvarchar(50),
    @age float
    AS
    SET IDENTITY_INSERT Info ON;
    INSERT INTO Info (id,city,age)
    VALUES (@id,@city,@age)
    SET IDENTITY_INSERT Info OFF;
    RETURN



    اخطار:
    Additional information: Violation of PRIMARY KEY constraint 'PK_Info'. Cannot insert duplicate key in object 'dbo.Info'.

    The statement has been terminated.
    من فقط مشکل فقط id جدول که به صورت خودکار مقدار دهی میشه

  7. #7
    کاربر دائمی آواتار ebrahim.rayatparvar
    تاریخ عضویت
    آبان 1392
    محل زندگی
    https://www.youtube.com/c/zangclass
    پست
    714

    نقل قول: مشکل با null ردیف

    تو چرا به id مقدار میدی؟؟؟
    تو پروسیجر و تو کد سی شارپ همه جا id رو پاک کن. براش مقدار نفرست.

  8. #8

    نقل قول: مشکل با null ردیف

    سلام انجام دادم باز ایراد گرفت
    Additional information: Explicit value must be specified for identity column in table 'Info' either when IDENTITY_INSERT is set to ON or when a replication user is inserting into a NOT FOR REPLICATION identity column.

  9. #9
    کاربر دائمی آواتار ebrahim.rayatparvar
    تاریخ عضویت
    آبان 1392
    محل زندگی
    https://www.youtube.com/c/zangclass
    پست
    714

    نقل قول: مشکل با null ردیف

    الان پاک کردی کد جدیدت رو بفرست؟؟؟

  10. #10
    کاربر دائمی آواتار ebrahim.rayatparvar
    تاریخ عضویت
    آبان 1392
    محل زندگی
    https://www.youtube.com/c/zangclass
    پست
    714

    نقل قول: مشکل با null ردیف


    SET IDENTITY_INSERT Info ON;
    SET IDENTITY_INSERT Info OFF;



    این دو خط رو هم پاک کن برای چی نوشتی
    مگه ستون id رو identety نگرفتی؟؟؟ نیاز به این 2 خط و مقدار دادن به ستون id نیست.

  11. #11

    نقل قول: مشکل با null ردیف

    تشکر درست شد
    من این کد برای دوستان قرار می دهم شاید یکی مثل خودم با این مشکل بر خورد کند
    برنامه + دیتابیس

    http://s7.picofile.com/file/8251952626/Test.zip.html
    http://s6.picofile.com/file/82519530...t1bak.zip.html
    تشکر از دوستان

تاپیک های مشابه

  1. مشکل در مقداردهی به عناصDataGrid
    نوشته شده توسط sarina در بخش C#‎‎
    پاسخ: 4
    آخرین پست: پنج شنبه 08 آذر 1386, 20:05 عصر
  2. مشکل با تراکنش به همراه DataReader
    نوشته شده توسط rasti_web در بخش C#‎‎
    پاسخ: 22
    آخرین پست: پنج شنبه 03 اسفند 1385, 12:33 عصر
  3. مشکل با تراکنش به همراه DataReader
    نوشته شده توسط rasti_web در بخش ASP.NET Web Forms
    پاسخ: 0
    آخرین پست: چهارشنبه 11 بهمن 1385, 11:19 صبح
  4. مشکل با دستیابی به property های داینامیک user control
    نوشته شده توسط nazaninam در بخش ASP.NET Web Forms
    پاسخ: 7
    آخرین پست: سه شنبه 18 مهر 1385, 19:48 عصر
  5. مشکل با اتصال به سرور و login prompt
    نوشته شده توسط mandana2010 در بخش SQL Server
    پاسخ: 2
    آخرین پست: شنبه 17 تیر 1385, 10:39 صبح

قوانین ایجاد تاپیک در تالار

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