±Ø±¸sqlÓï¾ä
1.¶Á³ö±íÖеÄ×Ö¶ÎÃû
ResultSet rs = test.selectSql("SELECT * from datainfo");
java.sql.ResultSetMetaData md=rs.getMetaData(); //¶Á³öÊý¾Ý¿âµÄ×Ö¶ÎÃû
int nColumn=md.getColumnCount(); //×Ö¶Î×ÜÊý
for(int i=0;i<nColumn;i++)
{
System.out.println(md.getColumnLabel(i+1)); //md.getColumnLabel(n)nÊÇ´Ó1¿ªÊ¼µÄ,´òӡÿ¸ö×Ö¶Î
}
2.²éѯij¸öʱ¼ä¶ÎÄÚµÄÊý¾Ý
String sql="select * from datainfo where time between '"+start+"' and '"+end+"'"; ȡʱ¼ä¶ÎÄÚµÄÊý¾Ý
select * from datainfo where time between "2009-11-03 11:16:59"and "2009-11-03 11:18:59"
3.°´Ä³¸ö×ֶνµÐòÅÅÁв¢Ñ¡È¡µÚÒ»¸ö
sql="select * from datainfo,nodeinfo where nodeinfo.nodeid="+Integer.parseInt(param)+" and nodeinfo.nodeip=datainfo.ip
order by time desc limit 0,1"; °´Ê±¼ä½µÐòÅÅÁРֻȡµÚÒ»¸ö
£¨limit 0,1 ÊÇֻȡ¼Ç¼ÖеĵÚÒ»Ìõ.ËùÒÔÕâÌõÓï¾äÖ»Äܵõ½Ò»Ìõ¼Ç¼
ÈçÏëȡǰ10ÌõÔò limit 0,10»òlimit 10
ÈçÏëÈ¡µÚ10ÖÁ20ÌõÔò limit 10,20 £©
4.³öÏÖOperation not allowed after ResultSet closedµÄ´íÎó
Ò»¸östmt¶à¸örs½øÐвÙ×÷.ÄÇô´ÓstmtµÃµ½µÄrs1,±ØÐëÂíÉϲÙ×÷´Ërs1ºó,²ÅÄÜÈ¥µÃµ½ÁíÍâµÄrs2,ÔÙ¶Ôrs2²Ù×÷.²»ÄÜ»¥Ïà½»ÌæÊ¹ÓÃ,»áÒýÆðrsÒѾ¹Ø±Õ´íÎó. ´íÎóµÄ´úÂëÈçÏÂ:
stmt=conn.createStatement();
rs=stmt.executeQuery("select * from t1");
rst=stmt.executeQuery("select * from t2"); rs.last();
//ÓÉÓÚÖ´ÐÐÁËrst=stmt.executeQuery(sql_a);rs¾Í»á±»¹Ø±Õµô£¡ËùÒÔ³ÌÐòÖ´Ðе½´Ë»áÌáʾResultSetÒѾ¹Ø±Õ.
´íÎóÐÅϢΪ:java.sql.SQLException: Operation not allowed after ResultSet closed rst.last();
ÕýÈ·µÄ´úÂë:
stmt=conn.createStatement();
rs=stmt.executeQuery("select * from t1");
&n
Ïà¹ØÎĵµ£º
1¡¢select 1 from mytable;Óëselect anycol(Ä¿µÄ±í¼¯ºÏÖеÄÈÎÒâÒ»ÐУ© from mytable;Óëselect * from mytable ×÷ÓÃÉÏÀ´ËµÊÇûÓвî±ðµÄ£¬¶¼ÊDz鿴ÊÇ·ñÓмǼ£¬Ò»°ãÊÇ×÷Ìõ¼þÓõġ£select 1 from ÖеÄ1ÊÇÒ»³£Á¿£¬²éµ½µÄËùÓÐÐеÄÖµ¶¼ÊÇËü£¬µ«´ÓЧÂÊÉÏÀ´Ëµ£¬1>anycol>*£¬ÒòΪ²»Óòé×Öµä±í¡£
2¡¢²é¿´¼Ç¼ÌõÊý¿ÉÒÔÓÃselect ......
1¡¢¹«Óñí±í´ïʽ (CTE) ¿ÉÒÔÈÏΪÊÇÔÚµ¥¸ö SELECT¡¢INSERT¡¢UPDATE¡¢DELETE »ò CREATE VIEW Óï¾äµÄÖ´Ðз¶Î§ÄÚ¶¨ÒåµÄÁÙʱ½á¹û¼¯¡£CTE ÓëÅÉÉú±íÀàËÆ£¬¾ßÌå±íÏÖÔÚ²»´æ´¢Îª¶ÔÏ󣬲¢ÇÒÖ»ÔÚ²éѯÆÚ¼äÓÐЧ¡£ÓëÅÉÉú±íµÄ²»Í¬Ö®´¦ÔÚÓÚ£¬CTE ¿É×ÔÒýÓ㬻¹¿ÉÔÚͬһ²éѯÖÐÒýÓöà´Î¡£
¡¡¡¡CTE ¿ÉÓÃÓÚ£º
¡¡¡¡´´½¨µÝ¹é²éѯ¡£ÓйØÏêϸР......
Select * from tableName
exec('select * from tableName')
exec sp_executesql N'select * from tableName' -- Çë×¢Òâ×Ö·û´®Ç°Ò»¶¨Òª¼ÓN
2:×Ö¶ÎÃû£¬±íÃû£¬Êý¾Ý¿âÃûÖ®Àà×÷Ϊ±äÁ¿Ê±£¬±ØÐëÓö¯Ì¬SQL
declare @fname varchar(20)
set @fname = 'FiledName'
Select @fname from tableName -- ´íÎó,²»»áÌáʾ´í ......
ÔÚÁгö±íÖÐËùÓÐ×Ö¶ÎÃûµÄʱºò£¬Óõ½ÁËÕâÑùÒ»¸öSQLº¯Êý£ºobject_id
ÕâÀïÎÒ½«Æä×÷ÓÃÓëÓ÷¨ÁгöÀ´£¬ºÃÈôó¼ÒÃ÷°×£º
OBJECT_ID£º
·µ»ØÊý¾Ý¿â¶ÔÏó±êʶºÅ¡£
Óï·¨
OBJECT_ID ( 'object' )
²ÎÊý
'object'
ҪʹÓõĶÔÏó¡£object µÄÊý¾ÝÀàÐÍΪ char »ò nchar¡£Èç¹û object µÄÊý¾ÝÀàÐÍÊÇ char£¬ÄÇôÒþÐÔ½«Æäת»»³É ncha ......
1¡¢Î½´Ê ν´ÊÔÊÐíÄú¹¹ÔìÌõ¼þ£¬ÒÔ±ãÖ»´¦ÀíÂú×ãÕâЩÌõ¼þµÄÄÇЩÐС£
2¡¢Ê¹Óà IN ν´Ê
ʹÓà IN ν´Ê½«Ò»¸öÖµÓëÆäËû¼¸¸öÖµ½øÐбȽϡ£ÀýÈ磺
SELECT NAME from STAFF WHERE DEPT IN (20, 15)
´ËʾÀýÏ൱ÓÚ£º
SELECT NAME from STAFF WHERE DEPT = 20 OR DEPT = 15
µ±×Ó²éѯ·µ»ØÒ»×éֵʱ£¬¿ÉʹÓà IN ºÍ NOT IN ÔËËã·û¡£ÀýÈç£ ......