PDA

View Full Version : سوال: چیکار کنیم وقتی مقدار یکی از فیلدها خالی هست دیتابیس جلوی insert رو بگیره؟



i-php-i
شنبه 15 فروردین 1394, 21:39 عصر
همونطور که می دونید آی دی کاربر باید حتما مقدار داشته باشه اما اگر موقع اینسرت هیچ مقداری برای این فیلد درنظر گرفته نشده بود چطور می شه جلوی اینسرت رو گرفت؟

البته باید بگم که می دونم باید فیلد رو NOT NULL کرد اما وقتی NOT NULL می شه باز هم اینسرت انجام می شه. البته فکر کنم این مشکل بخاطر مقدار Default هست ولی دقیقا نمی دونم چطور برطرفش کنم.

id1385
شنبه 15 فروردین 1394, 22:08 عصر
قبل از ارسال اعتبار سنجی کن و از pdo استفاده کن:



A transaction is the propagation of one or more changes to the database. For example, if you are creating a record or updating a record or deleting a record from the table, then you are performing transaction on the table. It is important to control transactions to ensure data integrity and to handle database errors.

leaping
شنبه 15 فروردین 1394, 22:35 عصر
از لحاظ اصولی نمیبایست فیلد id رو از بیرون مقدار دهی کرد و باید این کار رو گذاشت به عهده دیتابیس که به صورت aouto خودش وارد کنه

id1385
شنبه 15 فروردین 1394, 23:17 عصر
از لحاظ اصولی نمیبایست فیلد id رو از بیرون مقدار دهی کرد و باید این کار رو گذاشت به عهده دیتابیس که به صورت aouto خودش وارد کنه

حتماً و لزوماً فقط id نیست که باید از نوع not null باشه بلکه فیلدهای دیگه هم می تونن از نوع not null باشن

reza_alie
شنبه 15 فروردین 1394, 23:19 عصر
می تونی از یک دستور ifساده این کارو انجام بدی

j_naroogha@yahoo.com
یک شنبه 16 فروردین 1394, 08:57 صبح
میتونی هم سمت کلاینت و هم سمت سرور با دستور if چک کنی که اگر مقدارش تهی هست عمل درج رو انجام نده.
بعدشم اگه id نیاز به دستی به وارد کردن نداره در دیتابیس autonumber قرار بده تا خودش مقدار بگیره/

i-php-i
یک شنبه 16 فروردین 1394, 14:22 عصر
توی phpmyadmin قسمت اینسرت وقتی هیچ مقداری توی فرم اینسرت وارد نمی کنم و روی go کلیک می کنم یه ردیف جدید به جدول اضافه می شه درصورتیکه بخاطر وجود ستونهای not null نباید اینسرت انجام بشه

دلیل این مشکل چیه؟

Unique
یک شنبه 16 فروردین 1394, 16:44 عصر
احتمالا شما در زمان تعریف فیلد مقدار Null را چک زدین وگرنه نباید اینطوری باشه.
خروجی create جدول را بگذارین تا چک کنیم. از جدول export بگیر و فقط جمله create ش را اینجا بگذار)