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

نام تاپیک: ایجاد چند procedure در یک SqlCommand

  1. #1

    Unhappy ایجاد چند procedure در یک SqlCommand

    من در ساخت چندین stored procedure , در یک CommandText با خطا رو به رو میشم .

    درظمن , وقتی کدهای ساخت مثلآ جداول رو میدم , خطا های مسخره ای میده . که همون کد ها توی Query اجرا میشن !

    یک نمونش :

    Command.CommandText = @"USE [shop]
    CREATE TABLE [dbo].[Category](
    [Id] [int] IDENTITY(1,1) NOT NULL,
    [Title] [nvarchar](40) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [Category_Id] [int] NULL,
    CONSTRAINT [PK_Category] PRIMARY KEY CLUSTERED
    ([Id] ASC)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]) ON [PRIMARY]

    USE [shoppingdb]
    ALTER TABLE [dbo].[Category] WITH NOCHECK ADD CONSTRAINT [FK_Category_Category] FOREIGN KEY([Category_Id])

    REFERENCES [dbo].[Category] ([Id])

    ALTER TABLE [dbo].[Category] CHECK CONSTRAINT [FK_Category_Category]";


    در زمان اجرا Exception به وجود میاد که:
    Line 7: Incorrect syntax near '('.


    در صورتی که Ouery اجراش میکنه !!!

  2. #2

    مثال خود BOL

    کد زیر مثال خود BOL است و در محیط Query همون پیغام رو می دهد .

    ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.en/tsqlref9/html/1e068443-b9ea-486a-804f-ce7b6e048e8b.htm


    CREATE TABLE [dbo].[PurchaseOrderDetail]
    (
    [PurchaseOrderID] [int] NOT NULL
    REFERENCES Purchasing.PurchaseOrderHeader(PurchaseOrderID),
    [LineNumber] [smallint] NOT NULL,
    [ProductID] [int] NULL
    REFERENCES Production.Product(ProductID),
    [UnitPrice] [money] NULL,
    [OrderQty] [smallint] NULL,
    [ReceivedQty] [float] NULL,
    [RejectedQty] [float] NULL,
    [DueDate] [datetime] NULL,
    [rowguid] [uniqueidentifier] ROWGUIDCOL NOT NULL
    CONSTRAINT [DF_PurchaseOrderDetail_rowguid] DEFAULT (newid()),
    [ModifiedDate] [datetime] NOT NULL
    CONSTRAINT [DF_PurchaseOrderDetail_ModifiedDate] DEFAULT (getdate()),
    [LineTotal] AS (([UnitPrice]*[OrderQty])),
    [StockedQty] AS (([ReceivedQty]-[RejectedQty])),
    CONSTRAINT [PK_PurchaseOrderDetail_PurchaseOrderID_LineNumber]
    PRIMARY KEY CLUSTERED ([PurchaseOrderID], [LineNumber])
    WITH (IGNORE_DUP_KEY = OFF)
    )
    ON [PRIMARY]

  3. #3
    حالا من چه کار باید انجام بدم ؟

  4. #4
    کسی از اساتید این تاپیک رو ندیده .

    آقا مهرداد من پیشنهاد می دهم که قسمت
    WITH (IGNORE_DUP_KEY = OFF)
    رو
    برداری و با دستور جداگانه ای که مربوط به ساخت یا تغییر ایندکسه اونو تغییر بدی چون این گزینه بیشتر برای دستور ساخت ایندکسه .

  5. #5
    دوست عزیزم این Syntax مربوط به SQL Server 2005 میشه. شما اگر معنی IGNORE_DUP_KEY رو بدونین متوجه میشید که در Primary Key اصلا نمیشه از اون استفاده کرد، به همین دلیل هم در SQL Server 2005 در این شرایط فقط میتونین اون رو OFF بدین. در یک کلام: بهش نیاز ندارید، حذفش کنید!

  6. #6
    خیلی ممنون از پاسختون

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

  1. کار با sqlcommand
    نوشته شده توسط m_zamani در بخش VB.NET
    پاسخ: 11
    آخرین پست: چهارشنبه 27 دی 1385, 00:11 صبح
  2. select در sqlcommand
    نوشته شده توسط sin در بخش Classic ASP
    پاسخ: 0
    آخرین پست: پنج شنبه 06 مهر 1385, 10:27 صبح
  3. insert کردن بوسیله sqlcommand ..(خیلی فوری!!!!)
    نوشته شده توسط kamyar در بخش C#‎‎
    پاسخ: 2
    آخرین پست: سه شنبه 28 تیر 1384, 10:42 صبح

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

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