منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : انشاء جدول برمجيا
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
السلام عليكم كيفية انشاء جدول برمجيا مع علم وجود حقل مفتاح
ترقيم تلقائي
بالسكول سيرفر 2008
شوف الكود التالي من مثال المنتدى اللي برمجته
كود :
Dim th As New SqlCommand("CREATE TABLE th(tid int NOT NULL PRIMARY KEY identity,thid varchar(100),lasttime datetime default GETUTCDATE())", con)
        If con.State = Data.ConnectionState.Closed Then
            con.Open()
        End If

        th.ExecuteNonQuery()

ركز على
كود :
tid int NOT NULL PRIMARY KEY identity
شكرا اخي الكريم ولكن سؤال اذا بدلت
tid int NOT NULL PRIMARY KEY identity
ب
[id] [int] IDENTITY(1,1) NOT NULL
صح او خطا
لان سكريبت انشاء جدول بسكول
بكون هيك مكتوب
؟
انت تريد إنشاء حقل بخاصية مفتاح اساسي PRIMARY KEY وخاصية الترقيم التلقائي IDENTITY وهما خاصيتين وليسوا خاصية واحدة
استخدم الـ script التالي
PHP كود :
SET ANSI_NULLS ON
SET QUOTED_IDENTIFIER ON
CREATE TABLE 
[dbo].[th]([tid] [intIDENTITY(1,1NOT NULL,
CONSTRAINT [PK_thPRIMARY KEY CLUSTERED ([tidASC)WITH
(PAD_INDEX  OFF,
STATISTICS_NORECOMPUTE  OFF,
IGNORE_DUP_KEY OFF,
ALLOW_ROW_LOCKS  ON,
ALLOW_PAGE_LOCKS  ONON [PRIMARY])
ON [PRIMARY
(1,1) تعني البدء بالرقم 1 والزيادة بمقدار 1

RolleyesRolleyesRolleyes
شكرا اخي الكريم ولكن السؤال عند اضافة الجدول برمجيا نكتب
Dim th As New SqlCommand("CREATE TABLE th(tid int NOT NULL PRIMARY KEY identity,thid varchar(100),lasttime datetime default GETUTCDATE())", con)
If con.State = Data.ConnectionState.Closed Then
con.Open()
End If

th.ExecuteNonQuery()

ونضيف عناصر الجدول

ثم نكتب سكريبت
او كيف طريقة
الاضافة برمجيا مثلا
جدول اسمهstudent
idمفتاح رئيسي وترقيم تلقائي ويزيد1
name
note
الداتا سكول
PHP كود :
Dim A As New SqlCommand
        Dim con 
As New SqlConnection("جملة الاتصال")
        If 
con.State ConnectionState.Open Then con.Close() 
PHP كود :
Dim sqlStatement As String "SET ANSI_NULLS ON " _
        
"SET QUOTED_IDENTIFIER ON " _
        
"CREATE TABLE [dbo].[student]( " _
        
"[ID] [int] IDENTITY(1,1) NOT NULL, [NAME] [nvarchar](50) NULL, [Notes] [text] NULL, " _
        
"CONSTRAINT [PK_student] PRIMARY KEY CLUSTERED ([ID] ASC)WITH  " _
        
"(PAD_INDEX  = OFF, " _
        
"STATISTICS_NORECOMPUTE  = OFF, " _
        
"IGNORE_DUP_KEY = OFF, " _
        
"ALLOW_ROW_LOCKS  = ON, " _
        
"ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]) " _
        
"ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] " 
PHP كود :
= New SqlCommand(sqlStatementcon)
        
con.Open()
        
A.ExecuteNonQuery()
        
con.Close() 

RolleyesRolleyesRolleyes
جزاك الله خيرا
اين الخطا بالكود
If conn.State = ConnectionState.Open Then conn.Close()
Dim sqlStatement As String = "SET ANSI_NULLS ON " & _
"SET QUOTED_IDENTIFIER ON " & _
"CREATE TABLE [dbo].[aa]( " & _
"[ID] [int] IDENTITY(1,1) NOT NULL, [idbill] [float] NULL,[invoic] [float] NULL,[way] [nvarchar](2000) NULL,[detail] [nvarchar](2000) NULL,[qty] [float] NULL,[rate] [float] NULL,[amount] [float] NULL,[avat] [float] NULL,[vat] [float] NULL,[total] [float] NULL,[datee] [nvarchar](2000) NULL, " & _
"CONSTRAINT [PK_aa] PRIMARY KEY CLUSTERED ([ID] ASC)WITH " & _
"(PAD_INDEX = OFF, " & _
"STATISTICS_NORECOMPUTE = OFF, " & _
"IGNORE_DUP_KEY = OFF, " & _
"ALLOW_ROW_LOCKS = ON, " & _
"ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) " & _
"ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] "
A = New SqlCommand(sqlStatement, conn)
conn.Open()
A.ExecuteNonQuery()
conn.Close()
MsgBox("complete create tables")
Catch ex As Exception
MsgBox("THE Tables Are Exist ")
End Try
أحذف من جملة SQL في نهايتها الكلمات التالية
كود :
TEXTIMAGE_ON [PRIMARY]
وسوف يعمل الكود علي ضمنتي Big Grin

RolleyesRolleyesRolleyes
أحذف من جملة SQL في نهايتها الكلمات التالية
كود :
TEXTIMAGE_ON [PRIMARY]
وسوف يعمل الكود علي ضمنتي Big Grin

RolleyesRolleyesRolleyes
الصفحات : 1 2