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

نام تاپیک: درج مقدار Null در فیلد عددی

  1. #1

    درج مقدار Null در فیلد عددی

    دستور SQL زیر را دارم که فیلد Code1 از نوع Integer میباشد که مقدار آنرا از جدول دیگر می آورم. میخواهم در هر شرایطی این کد کار کند یعنی اگر مقدار فیلد Null هم باشد با کوتاهترین کد SQL دستور اجرا شود. فرض کنید بخواهیم این مقداردهی را برای 10 فیلد عددی انجام دهیم. کوتاهترین کد چه میتواند باشد بدون اینکه مقدار فیلدها را قبلا چک کنیم که Null هست یا نه. بعبارتی دیگر اگر بتوانیم مقدار عددی را اگر عدد باشد عدد و اگر خالی باشد Null را قرار دهیم.

    MySQL := 'Insert Into MyTable ' +
    '(' + 'Code1, Code2' + ')' + ' Values ' +
    '(' + Table2.FieldByName('Field1').AsString + ',' +
    Table2.FieldByName('Field2').AsString + ')';

  2. #2

    نقل قول: درج مقدار Null در فیلد عددی

    بعد از چند روز خودم به خودم جواب میدم:
    یه تابع بنویس که مقدار رو چک کنه و مقدار صحیح را برای متن SQL برگردونه. مثل زیر:

    function GetNumberValueForSQL( Value: Variant ): String;
    begin
    if (VarToStr(Value) = '') then
    begin
    Result := 'Null';
    end
    else
    begin
    Result := VarToStr( Value );
    end;

    end;


    بعد از اون استفاده کن:

    MySQL := 'Insert Into MyTable ' +
    '(' + 'Code1, Code2' + ')' + ' Values ' +
    '(' + GetNumberValueForSQL(Table2.FieldByName('Field1'). Value) + ',' +
    GetNumberValueForSQL(Table2.FieldByName('Field2'). Value) + ')';

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

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