/* °üº¬CÍ·Îļþ */
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
/* °üº¬SQLCAÍ·Îļþ */
EXEC SQL INCLUDE sqlca;
EXEC SQL INCLUDE sqlda;
int main()
{
EXEC SQL BEGIN DECLARE SECTION;
int money;
char answerbuff[200];
int flag;
EXEC SQL END DECLARE SECTION;
/*
* ¶¨ÒåÊäÈëËÞÖ÷±äÁ¿:½ÓÊÕÓû§Ãû¡¢¿ÚÁîºÍÍøÂç·þÎñÃû
*
*/
char username[10],password[10],server[10];
strcpy(username,"data_center");
strcpy(password,"data_center");
strcpy(server,"oradf1"); /*ÕâÀïÌîдµÄÊÇÊý¾Ý¿âµÄSID*/
/* Á¬½Óµ½Êý¾Ý¿â */
EXEC SQL CONNECT :username IDENTIFIED BY :password USING :server;
if (sqlca.sqlcode==0)
&n ......
/* °üº¬CÍ·Îļþ */
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
/* °üº¬SQLCAÍ·Îļþ */
EXEC SQL INCLUDE sqlca;
EXEC SQL INCLUDE sqlda;
int main()
{
EXEC SQL BEGIN DECLARE SECTION;
int money;
char answerbuff[200];
int flag;
EXEC SQL END DECLARE SECTION;
/*
* ¶¨ÒåÊäÈëËÞÖ÷±äÁ¿:½ÓÊÕÓû§Ãû¡¢¿ÚÁîºÍÍøÂç·þÎñÃû
*
*/
char username[10],password[10],server[10];
strcpy(username,"data_center");
strcpy(password,"data_center");
strcpy(server,"oradf1"); /*ÕâÀïÌîдµÄÊÇÊý¾Ý¿âµÄSID*/
/* Á¬½Óµ½Êý¾Ý¿â */
EXEC SQL CONNECT :username IDENTIFIED BY :password USING :server;
if (sqlca.sqlcode==0)
&n ......
»¨ÁËÁ½¸öÍíÉϰïÅóÓѽ«Ò»¸öasp¿ª·¢µÄÍøÕ¾´ÓACCESSÊý¾Ý¿âתÏòSQL SERVER 2000. ÍøÉϲéÁËЩ×ÊÁÏ£¬¼ÓÉÏ×Ô¼ºµÄ¾Àú£¬×ܽ᣺
1¡¢Ê×ÏÈ¿´asp µÄ³ÌÐòÖÐÊÇ·ñÓÐ on error resume next; Èç¹ûÓÐ,ÏÈ×¢Ê͵ô¡£·ñÔòºÜ¶à´íÎóÎÞ·¨±©Â¶³öÀ´
2¡¢´´½¨SQL SERVER Êý¾Ý±í¡£ ʹÓÃSQL SERVER 2000×Ô´øµÄÊý¾Ýµ¼ÈëÏòµ¼£¬½«ACCESSÊý¾Ý¿âÖеıí½á¹¹£¬ÒÔ¼°Êý¾Ýµ¼Èëµ½SQL SERVER ÖС£
3¡¢ÐÞ¸ÄSQL SERVER ÖбíµÄÖ÷¼ü£¬´ÓACCESSÖе¼ÈëµÄÊý¾Ý½«È¡ÏûÖ÷¼ü£¬ÒÔ¼°±íĬÈÏÖµ£¬²Î¿¼ACCESSÊý¾Ý¿â£¬½«Ö÷¼ü¼ÓÉÏ£¬Ä¬ÈÏÖµ¼ÓÉÏ£¬ È»ºó×ÔÔö³¤µÄÁУ¬Ê¹ÓñêʾÌî³ä£¬ÔöÁ¿Îª1.
4¡¢ÐÞ¸ÄaspÊý¾Ý¿âÖÐÁ¬½Ó×Ö·û´®¡£
5¡¢ÐÞ¸Äasp´úÂëÖеÄdelete²Ù×÷¡£Ê¹ÓÃDreamweaver¹ÜÀíÕû¸öÕ¾µã£¬È»ºóÔÚÕ¾µãÖÐËÑË÷delete * from .È«²¿ÐÞ¸Ä³É delete from.
6¡¢ÐÞ¸Äʱ¼äº¯Êý¡¢date() , time(),ÐÞ¸ÄΪ getDate()
7¡¢ÐÞ¸Äʱ¼äÔËË㺯Êý dataAdd º¯Êý¡£
8¡¢²âÊÔ£¬¿´ÊÇ·ñÓÐÆäËûÎÊÌâ¡£
9¡¢Ìá½»¡£ ......
»¨ÁËÁ½¸öÍíÉϰïÅóÓѽ«Ò»¸öasp¿ª·¢µÄÍøÕ¾´ÓACCESSÊý¾Ý¿âתÏòSQL SERVER 2000. ÍøÉϲéÁËЩ×ÊÁÏ£¬¼ÓÉÏ×Ô¼ºµÄ¾Àú£¬×ܽ᣺
1¡¢Ê×ÏÈ¿´asp µÄ³ÌÐòÖÐÊÇ·ñÓÐ on error resume next; Èç¹ûÓÐ,ÏÈ×¢Ê͵ô¡£·ñÔòºÜ¶à´íÎóÎÞ·¨±©Â¶³öÀ´
2¡¢´´½¨SQL SERVER Êý¾Ý±í¡£ ʹÓÃSQL SERVER 2000×Ô´øµÄÊý¾Ýµ¼ÈëÏòµ¼£¬½«ACCESSÊý¾Ý¿âÖеıí½á¹¹£¬ÒÔ¼°Êý¾Ýµ¼Èëµ½SQL SERVER ÖС£
3¡¢ÐÞ¸ÄSQL SERVER ÖбíµÄÖ÷¼ü£¬´ÓACCESSÖе¼ÈëµÄÊý¾Ý½«È¡ÏûÖ÷¼ü£¬ÒÔ¼°±íĬÈÏÖµ£¬²Î¿¼ACCESSÊý¾Ý¿â£¬½«Ö÷¼ü¼ÓÉÏ£¬Ä¬ÈÏÖµ¼ÓÉÏ£¬ È»ºó×ÔÔö³¤µÄÁУ¬Ê¹ÓñêʾÌî³ä£¬ÔöÁ¿Îª1.
4¡¢ÐÞ¸ÄaspÊý¾Ý¿âÖÐÁ¬½Ó×Ö·û´®¡£
5¡¢ÐÞ¸Äasp´úÂëÖеÄdelete²Ù×÷¡£Ê¹ÓÃDreamweaver¹ÜÀíÕû¸öÕ¾µã£¬È»ºóÔÚÕ¾µãÖÐËÑË÷delete * from .È«²¿ÐÞ¸Ä³É delete from.
6¡¢ÐÞ¸Äʱ¼äº¯Êý¡¢date() , time(),ÐÞ¸ÄΪ getDate()
7¡¢ÐÞ¸Äʱ¼äÔËË㺯Êý dataAdd º¯Êý¡£
8¡¢²âÊÔ£¬¿´ÊÇ·ñÓÐÆäËûÎÊÌâ¡£
9¡¢Ìá½»¡£ ......
»¨ÁËÁ½¸öÍíÉϰïÅóÓѽ«Ò»¸öasp¿ª·¢µÄÍøÕ¾´ÓACCESSÊý¾Ý¿âתÏòSQL SERVER 2000. ÍøÉϲéÁËЩ×ÊÁÏ£¬¼ÓÉÏ×Ô¼ºµÄ¾Àú£¬×ܽ᣺
1¡¢Ê×ÏÈ¿´asp µÄ³ÌÐòÖÐÊÇ·ñÓÐ on error resume next; Èç¹ûÓÐ,ÏÈ×¢Ê͵ô¡£·ñÔòºÜ¶à´íÎóÎÞ·¨±©Â¶³öÀ´
2¡¢´´½¨SQL SERVER Êý¾Ý±í¡£ ʹÓÃSQL SERVER 2000×Ô´øµÄÊý¾Ýµ¼ÈëÏòµ¼£¬½«ACCESSÊý¾Ý¿âÖеıí½á¹¹£¬ÒÔ¼°Êý¾Ýµ¼Èëµ½SQL SERVER ÖС£
3¡¢ÐÞ¸ÄSQL SERVER ÖбíµÄÖ÷¼ü£¬´ÓACCESSÖе¼ÈëµÄÊý¾Ý½«È¡ÏûÖ÷¼ü£¬ÒÔ¼°±íĬÈÏÖµ£¬²Î¿¼ACCESSÊý¾Ý¿â£¬½«Ö÷¼ü¼ÓÉÏ£¬Ä¬ÈÏÖµ¼ÓÉÏ£¬ È»ºó×ÔÔö³¤µÄÁУ¬Ê¹ÓñêʾÌî³ä£¬ÔöÁ¿Îª1.
4¡¢ÐÞ¸ÄaspÊý¾Ý¿âÖÐÁ¬½Ó×Ö·û´®¡£
5¡¢ÐÞ¸Äasp´úÂëÖеÄdelete²Ù×÷¡£Ê¹ÓÃDreamweaver¹ÜÀíÕû¸öÕ¾µã£¬È»ºóÔÚÕ¾µãÖÐËÑË÷delete * from .È«²¿ÐÞ¸Ä³É delete from.
6¡¢ÐÞ¸Äʱ¼äº¯Êý¡¢date() , time(),ÐÞ¸ÄΪ getDate()
7¡¢ÐÞ¸Äʱ¼äÔËË㺯Êý dataAdd º¯Êý¡£
8¡¢²âÊÔ£¬¿´ÊÇ·ñÓÐÆäËûÎÊÌâ¡£
9¡¢Ìá½»¡£ ......
µÚÊ®¶þÕ PL/SQLÓ¦ÓóÌÐòÐÔÄܵ÷ÓÅ
1¡¢PL/SQLÐÔÄÜÎÊÌâµÄÔµÓÉ
Ó¦»ùÓÚPL/SQLµÄÓ¦ÓóÌÐòÊ©ÐÐЧÂʵÍÏÂʱ£¬Í¨³£ÊÇÒòΪ²»ºÃµÄSQL»°Óï¡¢±à³Ì²½Ö裬¶ÔPL/SQL»ù´¡ÕÆÎÕÔã¸â»òÊÇÂÒÓù²ÏíÄÚ´æ´¢Æ÷´Ù³ÉµÄ¡£
•PL/SQLÖв»ºÃµÄSQL»°Óï
PL/SQL±à³Ì¿´ÉÏÈ¥Ïà¶ÔÕսϼòµ¥£¬ÓÉÓÚËüÃǵĸ´ÔÓÄÚÈݶ¼ÑÚ²ØÔÚSQL»°ÓïÖУ¬SQL»°Óï¾³£·Öµ£´óÁ¿µÄ¹¤×÷¡£ÕâÄËÊÇΪºÎ²»ºÃµÄSQL»°ÓïÊÇÊ©ÐÐЧÂʵÍϵÄÖØÒªÔµ¹ÊÁË¡£ÈçÈôÒ»¸ö³ÌÐòÖаüÔкܶ಻ºÃµÄSQL»°ÓÄÇô£¬ÎÞÂÛÊÇPL/SQL»°ÓïдµÄÓÐºÎÆäÃÀ¶¼ÊÇÓÚÊÂÎÞ²¹µÄ¡£
ÈçÆäSQL»°Óï¼õµÍÁËÎÒÃǵijÌÐòËٶȵϰ£¬½«Òª°´µ×ÏÂÁбíÖеIJ½Öè·ÖÎöÒ»ÏÂ×ÓËüÃǵÄÖ´Ðмƻ®ºÍÐÔÄÜ£¬Æäºó´Óбà×ëSQL»°Óï¡£±ÈÈ磬²éѯÓÅ»¯Æ÷µÄ½Òʾ¾Í¿ÉÄÜ»áÅųýµôÎÊÌ⣬ÈçûÓбØÒªµÄÈ«±íɨÃè¡£
Ò».EXPLAIN PLAN»°Óï
¶þ.Ê©ÓÃTKPROFµÄSQL TraceЧÄÜ
Èý.Oracle TraceЧÄÜ
•Ôã¸âµÄ±à³ÌÏ°Æø
Õý³££¬Ôã¸âµÄ±à³ÌÏ°ÆøÒ²»á¸ø³ÌÐò´ø»Ø¸ºÃæÓ°Ïì¡£ÕâÖÖÇé¿öÏ£¬¼´Ê¹ÊÇÓÐÐĵõijÌÐòԱд³öµÄ´úÂëÒ²Ò²Ðí·Á°ÐÔÄÜ·¢»Ó¡£
ÖÁÓÚ¸ø¶¨µÄÒ»ÏîÈÎÎñ£¬ÎÞÂÛÊÇËùÑ¡µÄ³ÌÐòÓïÑÔÓкεÈÊʺϣ¬±à×ëÆ·ÖʽϲîµÄ×Ó³ÌÐò(±ÈÈ磬һ¸öºÜÂýµÄ·ÖÃűðÀà»ò¼ìË÷º¯Êý)»òÐí»ÙµôÕû¸öÐÔÄÜ¡£¼ÙÉèÓÐÒ»¸ö¼±Ðè±»Ó¦ÓóÌÐòƵ·±µ÷ÓõIJéѯº¯Ê ......
SQL²Ù×÷È«¼¯
ÏÂÁÐÓï¾ä²¿·ÖÊÇMssqlÓï¾ä£¬²»¿ÉÒÔÔÚaccessÖÐʹÓá£
SQL·ÖÀࣺ
DDL—Êý¾Ý¶¨ÒåÓïÑÔ(CREATE£¬ALTER£¬DROP£¬DECLARE)
DML—Êý¾Ý²Ù×ÝÓïÑÔ(SELECT£¬DELETE£¬UPDATE£¬INSERT)
DCL—Êý¾Ý¿ØÖÆÓïÑÔ(GRANT£¬REVOKE£¬COMMIT£¬ROLLBACK)
Ê×ÏÈ,¼òÒª½éÉÜ»ù´¡Óï¾ä£º
1¡¢ËµÃ÷£º´´½¨Êý¾Ý¿â
CREATE DATABASE database-name
2¡¢ËµÃ÷£ºÉ¾³ýÊý¾Ý¿â
drop database dbname
3¡¢ËµÃ÷£º±¸·Ýsql server
--- ´´½¨ ±¸·ÝÊý¾ÝµÄ device
USE master
EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'
--- ¿ªÊ¼ ±¸·Ý
BACKUP DATABASE pubs TO testBack
4¡¢ËµÃ÷£º´´½¨Ð±í
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)
¸ù¾ÝÒÑÓÐµÄ±í´´½¨ÐÂ±í£º
A£ºcreate table tab_new like tab_old (ʹÓÃ¾É±í´´½¨Ð±í)
B£ºcreate table tab_new as select col1,col2¡ from tab_old definition only
5¡¢ËµÃ÷£ºÉ¾³ýбídrop table tabname
6¡¢ËµÃ÷£ºÔö¼ÓÒ»¸öÁÐ
Alter table tab ......
--SQL ËÙ²éÊÖ²á
/*******************************************/
SELECT
--ÓÃ;£º´ÓÖ¸¶¨±íÖÐÈ¡³öÖ¸¶¨ÁеÄÊý¾Ý
--Óï·¨£º
SELECT column_name(s) from table_name
--Ö÷Òª×Ö¾ä¿ÉժҪΪ:
SELECT select_list [INTO new_table]
from table_source
[WHERE search_condition]
[GROUP BY group_by_expression]
[HAVING search_condition]
[ORDER BY order_expression[ASC|DESC]]
-- AND & OR
ÓÃ;£ºÔÚWHERE ×Ó¾äÖÐ AND ºÍ OR ±»ÓÃÀ´Á¬½ÓÁ½¸ö»òÕ߸ü¶àµÄÌõ¼þ
--Between…AND
ÓÃ;£ºÖ¸¶¨Ðè·µ»ØÊý¾ÝµÄ·¶Î§
Óï·¨£º
SELECT column_name from table_name
WHERE column_name
Between value1 AND value2
--Distinct
ÓÃ;£ºDISTINCT ¹Ø¼ü×Ö±»ÓÃ×÷·µ»ØÎ¨Ò»µÄÖµ
Óï·¨£º
SELECT DISINCT column-name(s) from table-name
--Order by
ÓÃ;£ºÖ¸¶¨½á¹û¼¯µÄÅÅÐò
Óï·¨£º
SELECT column-name(s) from table-name ORDER BY {order_by_expression [ASC|DESC]}
--Group by
ÓÃ;£º¶Ô½á¹û¼¯½øÐзÖ×飬³£Óë»ã×ܺ¯ÊýÒ»ÆðʹÓá£
Óï·¨£º
SELECT column,SUM(column) from table GROUP BY column
Àý£º
SELECT Company,SUM(Amount) from Sales Group By Company
--Having ......
sqlÓïÑÔÖÐÓÐûÓÐÀàËÆCÓïÑÔÖеÄswitch caseµÄÓï¾ä£¿£¿
ûÓÐ,ÓÃcase when À´´úÌæ¾ÍÐÐÁË.
ÀýÈç,ÏÂÃæµÄÓï¾äÏÔʾÖÐÎÄÄêÔÂ
select getdate() as ÈÕÆÚ,case month(getdate())
when 11 then 'ʮһ'
when 12 then 'Ê®¶þ'
else substring('Ò»¶þÈýËÄÎåÁùÆß°Ë¾ÅÊ®', month(getdate()),1)
end+'ÔÂ' as Ô·Ý
=====================================================================
CASE ¿ÉÄÜÊÇ SQL Öб»ÎóÓÃ×î¶àµÄ¹Ø¼ü×ÖÖ®Ò»¡£ËäÈ»Äã¿ÉÄÜÒÔǰÓùýÕâ¸ö¹Ø¼ü×ÖÀ´´´½¨×ֶΣ¬µ«ÊÇËü»¹¾ßÓиü¶àÓ÷¨¡£ÀýÈ磬Äã¿ÉÒÔÔÚ WHERE ×Ó¾äÖÐʹÓà CASE¡£
Ê×ÏÈÈÃÎÒÃÇ¿´Ò»Ï CASE µÄÓï·¨¡£ÔÚÒ»°ãµÄ SELECT ÖУ¬ÆäÓï·¨ÈçÏ£º
SELECT <myColumnSpec> =
CASE
WHEN ......