عضویت العربیة English
پیامبر اکرم صلّی الله علیه و آله: نزدیک‌ترین شما به من در روز قیامت، کسانی هستند که در دنیا بیشتر از دیگران بر من صلوات فرستند.

آموزش برنامه نویسی پایگاه داده در ویژوال بیسیک 6 قسمت 10

آموزش برنامه نویسی پایگاه داده در ویژوال بیسیک 6 قسمت 10
جمعه 29 بهمن 1389  04:35 ق.ظ

استفاده از دستورات SQL در ویژوال بیسیک (2)

» همانطور که در درس 6 مشاهده کردید ، با دو نوع از دستورات SQL آشنا شدیم : دستورات پردازش داده ها (DML ) و دستورات تعریف داده ها (DDL ) ، همچنین با تعداد زیادی از دستورات نوع اول کار کردیم . من در این درس می خواهم تعدادی از دستورات نوع دوم یعنی دستورات تعریف داده یا سازماندهی پایگاه داده را معرفی کرده و نحوه استفاده از آنها را به شما عزیزان آموزش دهم .

» شاید بارها برای شما هم پیش آمده باشد که بخواهید در پایگاه داده خود جدول یا جداولی جدیدی را با استفاده از کد نویسی ایجاد کنید ، یعنی پروژه شما توانایی این را داشته باشد که در صورت نیاز بتواند جدولی را به پایگاه داده ای که با آن در ارتباط است اضافه کند و یا از آن حذف نماید . تعدادی دستور SQL در این زمینه وجود دارد که به راحتی و حتی با یک خط می تواند جدول مورد نظر شما را ایجاد و یا حذف نماید . البته برای ایجاد جدول روشهای دیگری مانند استفاده از امکانات DAO نیز وجود دارد ، که دارای پیچیدگی بیشتری نسبت به دستورات SQL است .

» روش استفاده این دستورات در برنامه : قبل از این که شما با این دستورات آشنا شوید باید بدانید که این دستورات را در کجا و چگونه به کار ببرید تا کارایی لازم را داشته باشند . برخلاف دستورات مدیریت پایگاه داده که در قسمت RecordSource به کار می رفتند این دستورات باید به گونه ای دیگر استفاده شوند .

_ ابتدا شما باید از قسمت Refrences گزینه MicroSoft DAO 3.5 Object Library نسخه جدیدتر آن یعنی MicroSoft DAO 3.5 Object Library را علامت بزنید تا بتوانیم از امکانات آن استفاده نماییم . سپس در قسمت General برنامه تعریفات زیر را انجام دهیم :

Dim DBase As Database

Dim SQL As String

_ از DBase برای باز کردن پایگاه داده مورد نظر و از SQL برای نگهداری دستورات اس کیو ال به صورت رشته استفاده خواهیم کرد .

» Create Table : این دستور که از مهمترین دستورات SQL است برای ایجاد جدول استفاده می شود و روش استفاده از آن به صورت زیر است :

 " ( ...  ,نوع  فیلد2 ,نوع   فیلد1 ) نام جدول SQL= " CREATE TABLE

" ( (SQL= " CREATE TABLE Media1 ( ID INTEGER , Name TEXT(20) , Family TEXT(20

_ همینطور که در مثال می بینید با این دستور جدولی با نام Media1 که سه فیلد : ID از نوع عدد صحیح ، نام از نوع رشته با طول 20 ، نام خانوادگی از نوع رشته با طول 20 ، ایجاد می شود . حال برای مثال ما این کد را درون یک دکمه قرار می دهیم تا با حالت کد اجرایی آن نیز آشنا شوید :

()Private Sub CmdNewTable_Click

( Set DBase = OpenDatabase( App.Path & "\db.mdb", True , False

" ( (SQL= " CREATE TABLE Media1 ( ID INTEGER , Name TEXT(20) , Family TEXT(20

DBase.Execute SQL

End Sub

» مهمترین قسمت در این مثال خط آخر است که دستورات SQL را به اجرا در می آورد . تقریبا همه دستوراتی که در این درس معرفی خواهند شد به این روش استفاده می شوند .

نکته : شما می توانید به جای استفاده از نوع TEXT از نوع CHAR به جای آن استفاده کنید که در هر حالت نتیجه یکسان خواهد بود .

» Alter Table : از این دستور برای تغییر دادن ساختار یک جدول استفاده می شود و می تواند کاربرد زیادی داشته باشد . برای مثال می توان با این دستور یک فیلد به جدول اضافه یا از آن حذف کرد بدون این که اطلاعات درون جدول تغییر کند یا از بین برود . خود این دستور به دو شکل قابل استفاده است :

نوع   فیلد  SQL1 = " ALTER TABLE TableName  ADD COLUMN

" فیلد  SQL2 = " ALTER TABLE TableName  DROP COLUMN

مثال :

" SQL1 = " ALTER TABLE Media1 ADD COLUMN BDate Date

" SQL2 = " ALTER TABLE Media1 DROP COLUMN BDate

_ در مثال 1 فیلد تاریخ تولد با نام BDate از نوع تاریخ به جدول Media1 اضافه می شود و در مثال 2 همین فیلد از جدول Media1 حذف می شود . مشاهده می کنید که در حذف کردن فیلد نوشتن نام فیلد کافی است و به نوع آن نیازی نداریم .

» Drop Table : این دستور برای پاک کردن یک جدول از پایگاه داده استفاده می شود . در استفاده از این دستور باید نهایت دقت را داشته باشید :

" نام جدول  SQL = " DROP TABLE

" SQL = " DROP TABLE Media1

» Create Index : این دستور برای تعیین فیلد کلید در یک جدول به کار می رود . باید توجه داشته باشید که فیلد کلید یا ایندکس از قبل در جدول وجود دارد و ما فقط خاصیت کلید بودن به آن می دهیم :

" SQL = " CREATE INDEX NewIndex ON Media1(ID) WITH PRIMARY

_ در این مثال ما به فیلد ID از جدول Media1 خاصیت ایندکس یا کلیدی بخشیدیم . در این حالت کلیدی ساخته می شود که از ورود داده ی تکراری و مقدار NULL یا تهی به داخل این فیلد در جدول جلوگیری می کند .

" SQL = " CREATE UNIQUE INDEX NewIndex ON Media1(ID) WITH IGNORE NULL

_ این شکل دستور مانند دستور قبلی کلیدی می سازد که از داده تکراری جلوگیری می کند ، ولی می تواند مقدار تهی یا NULL نیز داشته باشد .

» Constraint :

" ( SQL = " CREATE TABLE T1( ID INTEGER CONSTRAINT NewTable PRIMARY KEY

_ این شکل دستور هم مانند دستورهای فوق عمل می کند با این تفاوت که ما عمل ایجاد ایندکس را در همان زمان ساخت جدول باید مشخص کنیم . البته این نوع ایندکس در یکپارچگی داده ها نیز تاثیر دارد .

_ ساخت کلید خارجی : برای این کار نیز از دستورConstraint به همراه References استفاده میشود :

" ( (SQL= " CREATE TABLE Media1( ID Integer CONSTRAINT ID REFERENCES Media2(ID

_ در این مثال بین کلید ID موجود در جدول Media1 که قبلا به عنوان کلید اصلی تعریف شده است با فیلد ID موجود در جدول Media2 رابطه یک به چند برقرار می شود .

» من تا آنجا که می توانستم دستورات مهم این بخش را برای شما معرفی کردم . البته تعداد این دستورات زیاد است و من هم توانایی آن را ندارم که همه آنها را توضیح دهم . برای همین توصیه میکنم خود شما عزیزان برای آشنایی بیشتر با این دستورات تلاش زیادی از خود نشان داده و مطالعه کتابهی مفید در این زمینه را فراموش نکنید . همیشه موفق و پیروز باشید .

 

کریمی که جهان پاینده دارد               تواند حجتی را زنده دارد

 

دانلود پروژه و کارآموزی و کارافرینی

mohamadaminsh

mohamadaminsh
کاربر طلایی1
تاریخ عضویت : دی 1389 
تعداد پست ها : 25772
محل سکونت : خوزستان
دسترسی سریع به انجمن ها