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

نام تاپیک: دستور اینسرت شرطی

  1. #1
    کاربر دائمی
    تاریخ عضویت
    شهریور 1382
    محل زندگی
    عالم ماده
    پست
    977

    دستور اینسرت شرطی

    برای اینکه داده ای را در دیتابیسی به صورت زیر اینزرت کنیم چه تغییراتی باید در کوئری بدهم؟
    if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[image]'&#41  ; and OBJECTPROPERTY(id, N'IsUserTable') = 1)
    drop table [dbo].[image]
    GO

    CREATE TABLE [dbo].[image] (
    [img_pk] [int] NOT NULL ,
    [img_name] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
    [img_data] [image] NULL ,
    [img_contenttype] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
    ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
    GO


    INSERT INTO Image (img_pk,img_name,img_data,img_contenttype)  " +
    " VALUES (@img_pk, @img_name, @img_data,@img_contenttype )"+
    " WHERE img_pk =3"

  2. #2
    باید به جای insert از update استفاده کنید

  3. #3
    کاربر دائمی
    تاریخ عضویت
    شهریور 1382
    محل زندگی
    عالم ماده
    پست
    977
    دقیقا به ذهن خودم هم رسیده بود.اما
    1-آیا اینزرت شرطی هم امکانپذیر است؟
    2-در مورد متن زیر که از کتابهای همراه یافتم چه نظری داری؟
    If an update query could alter more than one row while updating both the clustering key and one or more text, image, or Unicode columns, the update operation fails and SQL Server returns an error message.

    Modifying a text, ntext, or image column with UPDATE initializes the column, assigns a valid text pointer to it, and allocates at least one data page unless updating the column with NULL.



    Note The UPDATE statement is logged. If you are replacing or modifying large blocks of text, ntext, or image data, use the WRITETEXT or UPDATETEXT statement instead of the UPDATE statement. The WRITETEXT and UPDATETEXT statements (by default) are not logged.


  4. #4
    این یک نمونه از درج شرطی البته احتمالا حالتهای زیاد دیگه ای هم قابل انجام هست

    if exists(select username from users where username='site')
    insert into users (username,[password]) values ('hhh','ggg')

    در مورد دومی هم باید روش فکر کنم ببینم منظورش چیه!

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

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