آموزش SQL: معرفی، فهرست مطالب و نمای کلی زبان
آموزش SQL: معرفی، فهرست مطالب و نمای کلی زبان
آموزش SQL
Tutorials Point — «یادگیری بهسادگی»؛ tutorialspoint.com
دربارهٔ این آموزش
SQL یک زبان رایانهای پایگاه داده است که برای بازیابی و مدیریت دادهها در پایگاههای دادهٔ رابطهای طراحی شده است. SQL مخفف Structured Query Language یا «زبان پرسوجوی ساختیافته» است.
این آموزش شروعی سریع برای کار با SQL فراهم میکند.
مخاطبان
این مرجع برای افراد مبتدی آماده شده است تا به آنها در درک مفاهیم زبان SQL، از سطح پایه تا پیشرفته، کمک کند.
پیشنیازها
پیش از شروع تمرین با انواع مثالهای این مرجع، فرض بر این است که با مفهوم پایگاه داده، بهویژه RDBMS، و نیز با یک زبان برنامهنویسی رایانهای آشنا هستید.
اطلاعیهٔ حق نشر و سلب مسئولیت
تمام محتوا و گرافیکهای این آموزش متعلق به tutorialspoint.com است. هیچیک از محتوای tutorialspoint.com یا این آموزش بدون اجازهٔ کتبی tutorialspoint.com نباید به هیچ شکل یا روشی بازتوزیع یا بازتولید شود. انجام چنین کاری نقض قوانین حق نشر است.
ممکن است این آموزش شامل نادقتی یا خطا باشد و Tutorials Point هیچ تضمینی دربارهٔ دقت سایت یا محتوای آن، از جمله این آموزش، ارائه نمیکند. در صورت مشاهدهٔ خطا در سایت tutorialspoint.com یا این آموزش، میتوان موضوع را از طریق نشانی webmaster@tutorialspoint.com اطلاع داد.
فهرست مطالب
شمارههای صفحه در این فهرست همان شمارههای درجشده در منبع هستند.
| عنوان | صفحهٔ منبع |
| آموزش SQL | 2 |
| مخاطبان | 2 |
| پیشنیازها | 2 |
| اطلاعیهٔ حق نشر و سلب مسئولیت | 2 |
| نمای کلی SQL | 15 |
| SQL چیست؟ | 15 |
| چرا SQL؟ | 15 |
| تاریخچه | 16 |
| فرایند SQL | 16 |
| دستورهای SQL | 17 |
| DDL — زبان تعریف داده | 17 |
| DML — زبان دستکاری داده | 17 |
| DCL — زبان کنترل داده | 17 |
| DQL — زبان پرسوجوی داده | 17 |
| مفاهیم RDBMS در SQL | 18 |
| فیلد چیست؟ | 19 |
| رکورد یا سطر چیست؟ | 19 |
| ستون چیست؟ | 19 |
| مقدار NULL چیست؟ | 19 |
| محدودیتهای SQL | 20 |
| محدودیت NOT NULL | 20 |
| محدودیت DEFAULT | 21 |
| مثال | 21 |
| حذف محدودیت DEFAULT | 21 |
| محدودیت UNIQUE | 21 |
| مثال | 21 |
| حذف محدودیت UNIQUE | 22 |
| کلید اصلی PRIMARY KEY | 22 |
| ایجاد کلید اصلی | 22 |
| حذف کلید اصلی | 23 |
| کلید خارجی FOREIGN KEY | 24 |
| مثال | 24 |
| حذف محدودیت FOREIGN KEY | 25 |
| محدودیت CHECK | 25 |
| مثال | 25 |
| حذف محدودیت CHECK | 25 |
| ایندکس INDEX | 26 |
| مثال | 26 |
| حذف محدودیت INDEX | 26 |
| یکپارچگی داده | 26 |
| نرمالسازی پایگاه داده | 27 |
| قاعدهٔ سوم 1NF | 29 |
| پایگاههای دادهٔ RDBMS و SQL | 32 |
| MySQL | 32 |
| تاریخچه | 32 |
| ویژگیها | 33 |
| MS SQL Server | 33 |
| تاریخچه | 33 |
| ویژگیها | 34 |
| Oracle | 34 |
| تاریخچه | 34 |
| ویژگیها | 35 |
| Microsoft Access | 36 |
| ویژگیها | 36 |
| نحو SQL | 37 |
دستور SELECT در SQL | 37 |
بند DISTINCT در SQL | 37 |
بند WHERE در SQL | 37 |
بند AND/OR در SQL | 37 |
بند IN در SQL | 38 |
بند BETWEEN در SQL | 38 |
بند Like در SQL | 38 |
بند ORDER BY در SQL | 38 |
بند GROUP BY در SQL | 38 |
بند COUNT در SQL | 38 |
بند HAVING در SQL | 38 |
دستور CREATE TABLE در SQL | 38 |
دستور DROP TABLE در SQL | 39 |
دستور CREATE INDEX در SQL | 39 |
دستور DROP INDEX در SQL | 39 |
دستور DESC در SQL | 39 |
دستور TRUNCATE TABLE در SQL | 39 |
دستور ALTER TABLE در SQL | 39 |
SQL ALTER TABLE Statement (Rename): | 39 |
دستور INSERT INTO در SQL | 39 |
دستور UPDATE در SQL | 39 |
دستور DELETE در SQL | 40 |
دستور CREATE DATABASE در SQL | 40 |
دستور DROP DATABASE در SQL | 40 |
دستور USE در SQL | 40 |
دستور COMMIT در SQL | 40 |
دستور ROLLBACK در SQL | 40 |
| انواع داده در SQL | 41 |
| انواع دادهٔ عددی دقیق | 41 |
| انواع دادهٔ عددی تقریبی | 41 |
| انواع دادهٔ تاریخ و زمان | 42 |
| انواع دادهٔ رشتهٔ نویسهای | 42 |
| انواع دادهٔ رشتهٔ نویسهای Unicode | 42 |
| انواع دادهٔ دودویی | 42 |
| سایر انواع داده | 43 |
| عملگرهای SQL | 44 |
| عملگر در SQL چیست؟ | 44 |
| عملگرهای حسابی SQL | 44 |
| عملگرهای مقایسهای SQL | 45 |
| عملگرهای منطقی SQL | 47 |
| عبارتهای SQL | 50 |
| نحو | 50 |
| عبارتهای بولی در SQL | 50 |
| عبارت عددی در SQL | 51 |
| عبارتهای تاریخ در SQL | 51 |
پایگاه داده با CREATE در SQL | 53 |
| نحو | 53 |
| مثال | 53 |
| حذف پایگاه داده با DROP یا DELETE | 54 |
| نحو | 54 |
| مثال | 54 |
پایگاه داده با SELECT در SQL | 55 |
| نحو | 55 |
| مثال | 55 |
جدول با CREATE در SQL | 56 |
| نحو | 56 |
| نحو | 56 |
| مثال | 57 |
| مثال | 57 |
جدول با DROP or DELETE در SQL | 59 |
| نحو | 59 |
| مثال | 59 |
پرسوجو INSERT در SQL | 60 |
| نحو | 60 |
| مثال | 60 |
| پرکردن یک جدول با استفاده از جدول دیگر | 61 |
پرسوجو SELECT در SQL | 62 |
| نحو | 62 |
| مثال | 62 |
بند WHERE در SQL | 64 |
| نحو | 64 |
| مثال | 64 |
| عملگرهای AND و OR در SQL | 66 |
| عملگر AND | 66 |
| نحو | 66 |
| مثال | 66 |
| عملگر OR | 67 |
| نحو | 67 |
| مثال | 67 |
پرسوجو UPDATE در SQL | 69 |
| نحو | 69 |
| مثال | 69 |
پرسوجو DELETE در SQL | 71 |
| نحو | 71 |
| مثال | 71 |
بند LIKE در SQL | 73 |
| نحو | 73 |
| مثال | 74 |
بند TOP در SQL | 75 |
| نحو | 75 |
| مثال | 75 |
بند ORDER BY در SQL | 77 |
| نحو | 77 |
| مثال | 77 |
| گروهبندی با GROUP BY در SQL | 79 |
| نحو | 79 |
| مثال | 79 |
| کلیدواژهٔ DISTINCT در SQL | 81 |
| نحو | 81 |
| مثال | 81 |
| مرتبسازی نتایج SQL | 83 |
| نحو | 83 |
| مثال | 83 |
| محدودیتهای SQL | 85 |
| محدودیت NOT NULL | 85 |
| محدودیت DEFAULT | 86 |
| مثال | 86 |
| حذف محدودیت DEFAULT | 86 |
| محدودیت UNIQUE | 87 |
| مثال | 87 |
| حذف محدودیت UNIQUE | 87 |
| کلید اصلی PRIMARY KEY | 88 |
| ایجاد کلید اصلی | 88 |
| حذف کلید اصلی | 89 |
| کلید خارجی FOREIGN KEY | 89 |
| مثال | 89 |
| حذف محدودیت FOREIGN KEY | 90 |
| محدودیت CHECK | 90 |
| مثال | 90 |
| حذف محدودیت CHECK | 91 |
| ایندکس INDEX | 91 |
| مثال | 91 |
| حذف محدودیت INDEX | 91 |
| حذف محدودیتها | 92 |
| محدودیتهای یکپارچگی | 92 |
| پیوندهای JOIN در SQL | 93 |
| انواع JOIN در SQL | 94 |
| INNER JOIN | 94 |
| نحو | 94 |
| مثال | 94 |
| LEFT JOIN | 95 |
| نحو | 95 |
| مثال | 95 |
| RIGHT JOIN | 96 |
| نحو | 96 |
| مثال | 96 |
| FULL JOIN | 97 |
| نحو | 97 |
| مثال | 98 |
| SELF JOIN | 99 |
| نحو | 99 |
| مثال | 99 |
| CARTESIAN JOIN | 100 |
| نحو | 100 |
| مثال | 100 |
| بند UNION در SQL | 102 |
| نحو | 102 |
| مثال | 102 |
| بند UNION ALL | 103 |
| نحو | 103 |
| مثال | 104 |
| مثال | 105 |
| مقادیر NULL در SQL | 109 |
| نحو | 109 |
| مثال | 109 |
| نحو نام مستعار در SQL | 111 |
| نحو | 111 |
| مثال | 111 |
| ایندکسهای SQL | 113 |
| دستور CREATE INDEX | 113 |
| ایندکسهای تکستونه | 113 |
| ایندکسهای یکتا | 113 |
| ایندکسهای مرکب | 114 |
| ایندکسهای ضمنی | 114 |
| دستور DROP INDEX | 114 |
| چه زمانی باید از ایندکسها پرهیز کرد؟ | 114 |
| دستور ALTER TABLE در SQL | 115 |
| نحو | 115 |
| مثال | 116 |
| دستور TRUNCATE TABLE در SQL | 118 |
| نحو | 118 |
| مثال | 118 |
| استفاده از نماها در SQL | 119 |
| ایجاد نماها | 119 |
| مثال | 119 |
| گزینهٔ WITH CHECK OPTION | 120 |
| بهروزرسانی یک نما | 120 |
| درج سطرها در یک نما | 121 |
| حذف سطرها از یک نما | 122 |
| حذف نماها | 122 |
| بند HAVING در SQL | 123 |
| نحو | 123 |
| مثال | 123 |
| تراکنشهای SQL | 125 |
| ویژگیهای تراکنشها | 125 |
| کنترل تراکنش | 125 |
| دستور COMMIT | 125 |
| مثال | 126 |
| دستور ROLLBACK | 126 |
| مثال | 126 |
| دستور SAVEPOINT | 127 |
| مثال | 127 |
| دستور RELEASE SAVEPOINT | 128 |
| دستور SET TRANSACTION | 129 |
| عملگرهای نویسهٔ جایگزین در SQL | 130 |
| نحو | 130 |
| مثال | 131 |
| توابع تاریخ در SQL | 132 |
ADDDATE(date,INTERVAL expr unit), ADDDATE(expr,days) | 134 |
ADDTIME(expr1,expr2) | 135 |
CONVERT_TZ(dt,from_tz,to_tz) | 135 |
CURDATE() | 135 |
CURRENT_DATE and CURRENT_DATE() | 136 |
CURTIME() | 136 |
CURRENT_TIME and CURRENT_TIME() | 136 |
CURRENT_TIMESTAMP and CURRENT_TIMESTAMP() | 136 |
DATE(expr) | 136 |
DATEDIFF(expr1,expr2) | 136 |
DATE_ADD(date,INTERVAL expr unit), | 137 |
DATE_SUB(date,INTERVAL expr unit) | 137 |
DATE_FORMAT(date,format) | 138 |
DATE_SUB(date,INTERVAL expr unit) | 140 |
DAY(date) | 140 |
DAYNAME(date) | 140 |
DAYOFMONTH(date) | 140 |
DAYOFWEEK(date) | 140 |
DAYOFYEAR(date) | 140 |
EXTRACT(unit FROM date) | 141 |
FROM_DAYS(N) | 141 |
FROM_UNIXTIME(unix_timestamp) | 141 |
FROM_UNIXTIME(unix_timestamp,format) | 141 |
HOUR(time) | 142 |
LAST_DAY(date) | 142 |
LOCALTIME and LOCALTIME() | 142 |
LOCALTIMESTAMP and LOCALTIMESTAMP() | 142 |
MAKEDATE(year,dayofyear) | 142 |
MAKETIME(hour,minute,second) | 143 |
MICROSECOND(expr) | 143 |
MINUTE(time) | 143 |
MONTH(date) | 143 |
MONTHNAME(date) | 143 |
NOW() | 144 |
PERIOD_ADD(P,N) | 144 |
PERIOD_DIFF(P1,P2) | 144 |
QUARTER(date) | 144 |
SECOND(time) | 145 |
SEC_TO_TIME(seconds) | 145 |
STR_TO_DATE(str,format) | 145 |
SUBDATE(date,INTERVAL expr unit) and SUBDATE(expr,days) | 145 |
SUBTIME(expr1,expr2) | 146 |
SYSDATE() | 146 |
TIME(expr) | 146 |
TIMEDIFF(expr1,expr2) | 146 |
TIMESTAMP(expr), TIMESTAMP(expr1,expr2) | 147 |
TIMESTAMPADD(unit,interval,datetime_expr) | 147 |
TIMESTAMPDIFF(unit,datetime_expr1,datetime_expr2) | 147 |
TIME_FORMAT(time,format) | 148 |
TIME_TO_SEC(time) | 148 |
TO_DAYS(date) | 148 |
UNIX_TIMESTAMP(), UNIX_TIMESTAMP(date) | 148 |
UTC_DATE, UTC_DATE() | 149 |
UTC_TIME, UTC_TIME() | 149 |
UTC_TIMESTAMP, UTC_TIMESTAMP() | 149 |
WEEK(date[,mode]) | 149 |
WEEKDAY(date) | 150 |
WEEKOFYEAR(date) | 150 |
YEAR(date) | 150 |
YEARWEEK(date), YEARWEEK(date,mode) | 151 |
| جدولهای موقت SQL | 152 |
| مثال | 152 |
| حذف جدولهای موقت | 153 |
| کپیکردن جدولها در SQL | 154 |
| مثال | 154 |
| مرحلهٔ ۱ | 154 |
| مرحلهٔ ۲ | 154 |
| مرحلهٔ ۳ | 155 |
| زیرپرسوجوهای SQL | 156 |
| زیرپرسوجو با دستور SELECT | 156 |
| مثال | 157 |
| زیرپرسوجو با دستور INSERT | 157 |
| مثال | 157 |
| زیرپرسوجو با دستور UPDATE | 158 |
| مثال | 158 |
| زیرپرسوجو با دستور DELETE | 158 |
| مثال | 159 |
| استفاده از دنبالهها در SQL | 160 |
| استفاده از ستون AUTO_INCREMENT | 160 |
| مثال | 160 |
| دریافت مقادیر AUTO_INCREMENT | 161 |
| مثال Perl | 161 |
| مثال PHP | 161 |
| شمارهگذاری مجدد یک دنبالهٔ موجود | 161 |
| شروع دنباله از یک مقدار مشخص | 161 |
| مدیریت دادههای تکراری در SQL | 163 |
| نحو | 163 |
| مثال | 163 |
| تزریق SQL | 165 |
| جلوگیری از تزریق SQL | 166 |
| مسئلهٔ LIKE | 166 |
| توابع کاربردی SQL | 167 |
ABS(X) | 176 |
ACOS(X) | 176 |
ASIN(X) | 176 |
ATAN(X) | 176 |
ATAN2(Y,X) | 177 |
BIT_AND(expression) | 177 |
BIT_COUNT(numeric_value) | 177 |
BIT_OR(expression) | 177 |
CEIL(X) | 178 |
CEILING(X) | 178 |
CONV(N,from_base,to_base) | 178 |
COS(X) | 178 |
COT(X) | 179 |
DEGREES(X) | 179 |
EXP(X) | 179 |
FLOOR(X) | 179 |
FORMAT(X,D) | 180 |
GREATEST(n1,n2,n3,..........) | 180 |
INTERVAL(N,N1,N2,N3,..........) | 180 |
INTERVAL(N,N1,N2,N3,..........) | 180 |
LEAST(N1,N2,N3,N4,......) | 181 |
LOG(X) | 181 |
LOG(B,X) | 181 |
LOG10(X) | 181 |
MOD(N,M) | 181 |
OCT(N) | 182 |
PI() | 182 |
POW(X,Y) | 182 |
POWER(X,Y) | 182 |
RADIANS(X) | 182 |
ROUND(X) | 183 |
ROUND(X,D) | 183 |
SIGN(X) | 183 |
SIN(X) | 183 |
SQRT(X) | 184 |
STD(expression) | 184 |
STDDEV(expression) | 184 |
TAN(X) | 184 |
TRUNCATE(X,D) | 184 |
ASCII(str) | 186 |
BIN(N) | 187 |
BIT_LENGTH(str) | 187 |
CHAR(N,... [USING charset_name]) | 187 |
CHAR_LENGTH(str) | 187 |
CHARACTER_LENGTH(str) | 188 |
CONCAT(str1,str2,...) | 188 |
CONCAT_WS(separator,str1,str2,...) | 188 |
CONV(N,from_base,to_base) | 188 |
ELT(N,str1,str2,str3,...) | 189 |
EXPORT_SET(bits,on,off[,separator[,number_of_bits]]) | 189 |
FIELD(str,str1,str2,str3,...) | 189 |
FIND_IN_SET(str,strlist) | 189 |
FORMAT(X,D) | 189 |
HEX(N_or_S) | 190 |
INSERT(str,pos,len,newstr) | 190 |
INSTR(str,substr) | 190 |
LCASE(str) | 191 |
LEFT(str,len) | 191 |
LENGTH(str) | 191 |
LOAD_FILE(file_name) | 191 |
LOCATE(substr,str), LOCATE(substr,str,pos) | 191 |
LOWER(str) | 192 |
LPAD(str,len,padstr) | 192 |
LTRIM(str) | 192 |
MAKE_SET(bits,str1,str2,...) | 192 |
MID(str,pos,len) | 193 |
OCT(N) | 193 |
OCTET_LENGTH(str) | 193 |
ORD(str) | 193 |
POSITION(substr IN str) | 193 |
QUOTE(str) | 193 |
expr REGEXP pattern | 194 |
REPEAT(str,count) | 194 |
REPLACE(str,from_str,to_str) | 194 |
REVERSE(str) | 195 |
RIGHT(str,len) | 195 |
RPAD(str,len,padstr) | 195 |
RTRIM(str) | 195 |
SOUNDEX(str) | 196 |
expr1 SOUNDS LIKE expr2 | 196 |
SPACE(N) | 196 |
STRCMP(str1, str2) | 196 |
SUBSTRING(str,pos) | 197 |
SUBSTRING(str FROM pos) | 197 |
SUBSTRING(str,pos,len) | 197 |
SUBSTRING(str FROM pos FOR len) | 197 |
SUBSTRING_INDEX(str,delim,count) | 197 |
TRIM([{BOTH | LEADING | TRAILING} [remstr] FROM] str) | 198 |
TRIM([remstr FROM] str) | 198 |
UCASE(str) | 198 |
UNHEX(str) | 198 |
UPPER(str) | 199 |
فصل ۱ — نمای کلی SQL
این آموزش، یادگیری ویژهای دربارهٔ زبان پرسوجوی ساختیافته ارائه میکند و امکان تمرین دستورهای SQL را فراهم میسازد؛ دستورهایی که نتیجهٔ آنها بلافاصله قابل مشاهده است. SQL زبان پایگاه داده است و عملیات ایجاد و حذف پایگاه داده، بازیابی سطرها، تغییر سطرها و موارد مشابه را در بر میگیرد.
SQL یک استاندارد ANSI، یعنی مؤسسهٔ ملی استانداردهای آمریکا، است؛ بااینحال نسخهها و گویشهای متفاوتی از زبان SQL وجود دارند.
SQL چیست؟
SQL همان Structured Query Language یا «زبان پرسوجوی ساختیافته» است؛ زبانی رایانهای برای ذخیرهسازی، دستکاری و بازیابی دادههای نگهداریشده در پایگاه دادهٔ رابطهای.
SQL زبان استاندارد سامانههای پایگاه دادهٔ رابطهای است. سامانههای مدیریت پایگاه دادهٔ رابطهای مانند MySQL، Microsoft Access، Oracle، Sybase، Informix، PostgreSQL و SQL Server از SQL بهعنوان زبان استاندارد پایگاه داده استفاده میکنند.
این سامانهها در عین حال گویشهای متفاوتی نیز بهکار میبرند:
- SQL Server از
T-SQL استفاده میکند.
- Oracle از
PL/SQL استفاده میکند.
- نسخهٔ SQL در Microsoft Access، در قالب بومی،
JET SQL نام دارد و موارد مشابه دیگری نیز وجود دارد.
چرا SQL؟
- به کاربران اجازه میدهد به دادههای سامانههای مدیریت پایگاه دادهٔ رابطهای دسترسی داشته باشند.
- به کاربران اجازه میدهد دادهها را توصیف کنند.
- به کاربران اجازه میدهد دادهها را در پایگاه داده تعریف و آنها را دستکاری کنند.
- امکان جاسازی SQL در زبانهای دیگر با استفاده از ماژولها، کتابخانهها و پیشپردازندههای SQL را فراهم میکند.
- به کاربران اجازه میدهد پایگاه داده و جدول ایجاد یا حذف کنند.
- به کاربران اجازه میدهد در پایگاه داده نما، رویهٔ ذخیرهشده و تابع ایجاد کنند.
- به کاربران اجازه میدهد روی جدولها، رویهها و نماها مجوز دسترسی تعیین کنند.
تاریخچه
- ۱۹۷۰: دکتر E. F. «Ted» Codd از IBM بهعنوان پدر پایگاههای دادهٔ رابطهای شناخته میشود. او یک مدل رابطهای برای پایگاههای داده توصیف کرد.
- ۱۹۷۴: زبان پرسوجوی ساختیافته پدیدار شد.
- ۱۹۷۸: IBM برای توسعهٔ ایدههای Codd کار کرد و محصولی با نام
System/R ارائه داد.
- ۱۹۸۶: IBM نخستین نمونهٔ اولیهٔ پایگاه دادهٔ رابطهای را توسعه داد و این فناوری توسط ANSI استاندارد شد. نخستین پایگاه دادهٔ رابطهای توسط Relational Software عرضه شد؛ شرکتی که بعدها به Oracle تبدیل شد.
فرایند SQL
هنگامی که یک دستور SQL را برای هر RDBMS اجرا میکنید، سامانه بهترین روش انجام درخواست را تعیین میکند و موتور SQL مشخص میکند وظیفه چگونه تفسیر شود.
اجزای مختلفی در این فرایند حضور دارند؛ از جمله توزیعکنندهٔ پرسوجو، موتورهای بهینهسازی، موتور کلاسیک پرسوجو و موتور پرسوجوی SQL. موتور کلاسیک پرسوجو همهٔ پرسوجوهای غیر SQL را مدیریت میکند، در حالی که موتور پرسوجوی SQL فایلهای منطقی را مدیریت نمیکند.
شکل زیر معماری سادهٔ SQL را مطابق نمودار منبع نشان میدهد:
دستورهای SQL
دستورهای استاندارد SQL برای تعامل با پایگاههای دادهٔ رابطهای شامل CREATE، SELECT، INSERT، UPDATE، DELETE و DROP هستند. این دستورها بر اساس ماهیتشان در گروههای زیر دستهبندی میشوند:
DDL — زبان تعریف داده
| دستور | توضیح |
CREATE | یک جدول جدید، نمایی از یک جدول یا شیء دیگری در پایگاه داده ایجاد میکند. |
ALTER | یک شیء موجود پایگاه داده، مانند جدول، را تغییر میدهد. |
DROP | کل یک جدول، نمای یک جدول یا شیء دیگری را از پایگاه داده حذف میکند. |
DML — زبان دستکاری داده
| دستور | توضیح |
INSERT | یک رکورد ایجاد میکند. |
UPDATE | رکوردها را تغییر میدهد. |
DELETE | رکوردها را حذف میکند. |
DCL — زبان کنترل داده
| دستور | توضیح |
GRANT | یک امتیاز یا مجوز را به کاربر میدهد. |
REVOKE | امتیاز یا مجوزی را که به کاربر داده شده است پس میگیرد. |
DQL — زبان پرسوجوی داده
| دستور | توضیح |
SELECT | رکوردهای مشخصی را از یک یا چند جدول بازیابی میکند. |