°ÑSQL ServerÊý¾Ý±íµÄÄÚÈÝת»»ÎªÏàÓ¦µÄINSERTÓï¾ä
±ÊÕßÔøÔÚ¡¶³ÌÐòÔ±¡·2009Äê11ÆÚÉÏ̽ÌÖTransact-SQLµÄÔª±à³Ì£¬¼´Í¨¹ýĿ¼ÊÓͼ¡¢ÔªÊý¾Ýº¯ÊýµÈ·½Ê½·ÃÎÊÊý¾Ý¿âµÄÔªÊý¾ÝÐÅÏ¢£¬ÔÚÖ´Ðйý³ÌÖж¯Ì¬Éú³ÉSQL½Å±¾¡£µ±Ê±ÏÞÓÚÆª·ù£¬Ëù¸øµÄÀý×Ó½ÏÉÙ¡£ÕâÀï¸ø³ö¶¯Ì¬Éú³ÉSQL½Å±¾µÄÒ»¸öµäÐÍÓ¦Ó㬰ÑÊý¾Ý±íµÄÄÚÈÝת»»ÎªÏàÓ¦µÄINSERTÓï¾ä¡£
Õâ¸öÆô·¢À´×ÔÎÒ¹ÜÀíÔ¶³ÌÊý¾Ý¿âµÄ¾Àú¡£ÎÒ³£³£ÐèÒªÓñ¾µØSQL ServerÊý¾Ý¿âÖеÄÒ»¸ö±íµÄÄÚÈÝ£¬È¥¸üÐÂÔ¶³ÌÊý¾Ý¿âÖÐͬÃû±íÖеÄÄÚÈÝ¡£±íÖеÄÄÚÈÝÖ»ÓÐÊýÊ®ÐС£Íø¹ÜÆÁ±ÎÁËÊý¾Ý¿âµÄ1433¶Ë¿Ú£¬ÎÒÖ»ÄÜʹÓÃÔ¶³Ì×ÀÃæµÇ¼ÉÏÈ¥·ÃÎÊÊý¾Ý¿â¡£Ô¶³Ì×ÀÃæÖ§³Ö¼ôÌù°å¸´ÖÆÕ³Ìù£¬Ò²Ö§³ÖÎļþ´«Ê䣬¼ôÌù°å¶ÔÓÚ´«ÊäÉÙÁ¿µÄÎı¾Êý¾ÝºÜ·½±ã£¬Îļþ´«ÊäÒªÂ鷳ЩÇÒ²»Ì«°²È«¡£ÎÒÏ£ÍûÄܰѱ¾»ú´Ó±íÖвéѯ³öÀ´µÄÄÚÈÝת»»ÎªINSERTÓï¾ä£¬ÕâÑùµÄ»°£¬¾Í¿ÉÒÔ·½±ãµØ¸´ÖƵ½Ô¶³Ì»úÆ÷ÉÏÖ´ÐС£
ÓÉÓÚÉú³ÉµÄINSERTÓï¾ä¼ÈÈ¡¾öÓÚ±íµÄ½á¹¹£¬Ò²È¡¾öÓÚ±íÖеÄÊý¾Ý£¬Éú³ÉÕâÑùµÄ½Å±¾ÊDZȽÏÂé·³µÄ¡£°´ÕÕÑÐò½¥½øµÄÔÔò£¬ÎÒÃÇÏÈ¿¼ÂǼòµ¥µÄÇé¿ö£¬¼Ù¶¨Êý¾Ý±íµÄ½á¹¹ÊÇÒÑÖªµÄ¡£ÕâÀïÐé¹¹ÁËÒ»¸ö±í£¬°üº¬Á˼¸ÖÖ´ú±íÐÔÊý¾ÝÀàÐÍ£¬µ«²»º¬¶þ½øÖÆÊý¾Ý¡£ÏÂÃæÊDZíµÄ¶¨Òå½Å±¾£º
CREATE TABLE t1(
c1 INT,
c2 VARCHAR(10),
c3 DATETIME
)
ÎÒÃÇÒÀ´Î¿´¸÷¸öÁÐÔÚINSERTÓï¾äÖÐÊÇÔõô±íʾµÄ¡£ÕûÊýÁв»ÐèÒªÈκÎÐÞÊΣ¬µ«ÓÉÓÚ¶¯Ì¬Éú³ÉµÄSQLÓï¾äÊÇÎı¾£¬ÁеÄÖµÐèÓÃCAST»òCONVERTº¯Êýת»»Îª×Ö·û´®¡£×Ö·û´®ÁÐÐèÒªÓõ¥ÒýºÅÀ¨ÆðÀ´¡£×¢Òâÿ¸öµ¥ÒýºÅÔÚ×Ö·û´®ÖÐÐèÓÃÁ½¸öµ¥ÒýºÅ±íʾ¡£ÈÕÆÚÀàÐͼÈÐèҪת»»£¬ÓÖµÃÓõ¥ÒýºÅÀ¨ÆðÀ´£¬ÕâÀïÈÕÆÚÀàÐÍÏÔʾµÄ¸ñʽ²¢²»ÖØÒª¡£ÕâÑù£¬Éú³ÉµÄINSERTÓï¾äµÄ½Å±¾Ó¦¸ÃÏñÏÂÃæÕâ¸öÑù×Ó£º
SELECT 'INSERT INTO t1 SELECT '
+ CAST(c1 AS VARCHAR(100)) +','
+ ''''+c2+'''' +','
+ ''''+CAST(c3 AS VARCHAR(100))+''''
from t1
ÉÏÃæµÄ½Å±¾ºöÂÔÁËÒ»¸öÌØÊ⵫ºÜ³£¼ûµÄÖµ£¬¾ÍÊÇNULL¡£²»¹ÜÁб¾À´µÄÊý¾ÝÀàÐÍÊÇʲô£¬ÖµÎªNULLʱÔÚINSERTÓï¾äÖÐ×ÜÊÇÓÃ×Ö·û´®NULL±íʾ£¬²»¼ÓÒýºÅ¡£ÎÒÃÇ¿ÉÒÔÓÃCASEº¯Êý´¦ÀíֵΪNULLµÄÇé¿ö¡£ÕâÑù£¬ÉÏÃæµÄ½Å±¾¸Ä½øÎª£º
SELECT 'INSERT INTO t1 SELECT ' +
CASE
WHEN c1 IS NULL THEN 'NULL'
ELSE CAST(c1 AS VARCHAR(100))
END +',' +
CASE
WHEN c2 IS NULL THEN 'NULL'
ELSE ''''+c2+''''
END +',' +
CASE
WHEN c3 IS NU
Ïà¹ØÎĵµ£º
ÔÚSQL*PlusÖÐĬÈϵÄ"&"±íÊ¾Ìæ´ú±äÁ¿£¬SQL*PlusÈÏΪ&·ûºóÃæµÄ×Ö·û´®Îª±äÁ¿£»Ö»ÒªÔÚÃüÁîÖгöÏָ÷ûºÅ£¬SQL*Plus¾Í»áÒªÄãÊäÈëÌæ´úÖµ¡£Õâ¾ÍÒâζ×ÅÄãÎÞ·¨½«Ò»¸öº¬Óи÷ûºÅµÄ×Ö·û´®²åÈë»ò¸üе½Êý¾Ý¿â
set define off ¹Ø±ÕÌæ´ú±äÁ¿¹¦ÄÜ£¬“&”½«×÷ΪÆÕͨ×Ö·û
set def ......
sql2000º¯Êý´óÈ«1 µ±Ç°ÏµÍ³ÈÕÆÚ¡¢Ê±¼ä
select getdate()
2. dateadd ÔÚÏòÖ¸¶¨ÈÕÆÚ¼ÓÉÏÒ»¶Îʱ¼äµÄ»ù´¡ÉÏ£¬·µ»ØÐ嵀 datetime Öµ
ÀýÈ磺ÏòÈÕÆÚ¼ÓÉÏ2Ìì
select dateadd(day,2,'2004-10-15') --·µ»Ø£º2004-10-17 00:00:00.000
3. datediff ·µ»Ø¿çÁ½¸öÖ¸¶¨ÈÕÆÚµÄÈ ......
1 TOP
ÕâÊÇÒ»¸ö´ó¼Ò¾³£Îʵ½µÄÎÊÌ⣬ÀýÈçÔÚSQLSERVERÖпÉÒÔʹÓÃÈçÏÂÓï¾äÀ´È¡µÃ¼Ç¼¼¯ÖеÄǰʮÌõ¼Ç¼£º
SELECT TOP 10 * from [index] ORDER BY indexid DESC;
µ«ÊÇÕâÌõSQLÓï¾äÔÚSQLiteÖÐÊÇÎÞ·¨Ö´Ðеģ¬Ó¦¸Ã¸ÄΪ£º
SELECT * from [index] ORDER BY indexid DESC limit 0,10;
ÆäÖÐlimit 0,10±íʾ´ÓµÚ0Ìõ¼Ç¼¿ªÊ¼£¬Íùºó ......
sql»ñÈ¡×Öĸ:
CREATE FUNCTION dbo.F_Get_STR (@S VARCHAR(100))
RETURNS VARCHAR(100)
AS
BEGIN
WHILE PATINDEX('%[^a-z]%',@S)>0
BEGIN
&n ......
Ò»¡¢Ê²Ã´ÊÇSQL×¢Èëʽ¹¥»÷?
¡¡¡¡ËùνSQL×¢Èëʽ¹¥»÷£¬¾ÍÊǹ¥»÷Õß°ÑSQLÃüÁî²åÈëµ½Web±íµ¥µÄÊäÈëÓò»òÒ³ÃæÇëÇóµÄ²éѯ×Ö·û´®£¬ÆÛÆ·þÎñÆ÷Ö´ÐжñÒâµÄSQLÃüÁî¡£ÔÚijЩ±í
µ¥ÖУ¬Óû§ÊäÈëµÄÄÚÈÝÖ±½ÓÓÃÀ´¹¹Ôì(»òÕßÓ°Ïì)¶¯Ì¬SQLÃüÁ»ò×÷Ϊ´æ´¢¹ý³ÌµÄÊäÈë²ÎÊý£¬ÕâÀà±íµ¥ÌرðÈÝÒ×Êܵ½SQL×¢Èëʽ¹¥»÷¡£³£¼ûµÄSQL×¢Èëʽ¹¥
»÷¹ý³ÌÀàÈ磺
......