Javaµ÷ÓÃSQL ServerµÄ´æ´¢¹ý³ÌÏê½â
1ʹÓò»´ø²ÎÊýµÄ´æ´¢¹ý³Ì
¡¡¡¡Ê¹Óà JDBC Çý¶¯³ÌÐòµ÷Óò»´ø²ÎÊýµÄ´æ´¢¹ý³Ìʱ£¬±ØÐëʹÓà call SQL תÒåÐòÁС£²»´ø²ÎÊýµÄ call תÒåÐòÁеÄÓï·¨ÈçÏÂËùʾ£º
¡¡¡¡
ÒÔÏÂÊÇÒýÓÃÆ¬¶Î£º
{call procedure-name}
¡¡¡¡×÷ΪʵÀý£¬ÔÚ SQL Server 2005 AdventureWorks ʾÀýÊý¾Ý¿âÖд´½¨ÒÔÏ´洢¹ý³Ì£º
¡¡¡¡
ÒÔÏÂÊÇÒýÓÃÆ¬¶Î£º
CREATE PROCEDURE GetContactFormalNames
¡¡¡¡AS
¡¡¡¡BEGIN
¡¡¡¡ SELECT TOP 10 Title + ' ' + FirstName + ' ' + LastName AS FormalName
¡¡¡¡ from Person.Contact
¡¡¡¡END
´Ë´æ´¢¹ý³Ì·µ»Øµ¥¸ö½á¹û¼¯£¬ÆäÖаüº¬Ò»ÁÐÊý¾Ý(ÓÉ Person.Contact ±íÖÐǰʮ¸öÁªÏµÈ˵ijƺô¡¢Ãû³ÆºÍÐÕÊÏ×é³É)¡£
¡¡¡¡ÔÚÏÂÃæµÄʵÀýÖУ¬½«Ïò´Ëº¯Êý´«µÝ AdventureWorks ʾÀýÊý¾Ý¿âµÄ´ò¿ªÁ¬½Ó£¬È»ºóʹÓà executeQuery ·½·¨µ÷Óà GetContactFormalNames ´æ´¢¹ý³Ì¡£
ÒÔÏÂÊÇÒýÓÃÆ¬¶Î£º
¡¡¡¡public static void executeSprocNoParams(Connection con) ...{
¡¡¡¡ try ...{
¡¡¡¡ Statement stmt = con.createStatement();
¡¡¡¡ResultSet rs = stmt.executeQuery("{call dbo.GetContactFormalNames}");
¡¡¡¡
¡¡¡¡ while (rs.next()) ...{
¡¡System.out.println(rs.getString("FormalName"));
¡¡¡¡}
¡¡¡¡rs.close();
¡¡¡¡stmt.close();
¡¡ }
¡¡¡¡catch (Exception e) ...{
¡¡¡¡e.printStackTrace();
¡¡¡¡}
¡¡¡¡}
¡¡¡¡2ʹÓôøÓÐÊäÈë²ÎÊýµÄ´æ´¢¹ý³Ì
¡¡¡¡Ê¹Óà JDBC Çý¶¯³ÌÐòµ÷Óôø²ÎÊýµÄ´æ´¢¹ý³Ìʱ£¬±ØÐë½áºÏ SQLServerConnection ÀàµÄ prepareCall ·½·¨Ê¹Óà call SQL תÒåÐòÁС£´øÓÐ IN ²ÎÊýµÄ call תÒåÐòÁеÄÓï·¨ÈçÏÂËùʾ£º
¡¡¡¡
ÒÔÏÂÊÇÒýÓÃÆ¬¶Î£º
{call procedure-name[([parameter][,[parameter]]...)]}
¡¡¡¡¹¹Ôì call תÒåÐòÁÐʱ£¬ÇëʹÓà ?(ÎʺÅ)×Ö·ûÀ´Ö¸¶¨ IN ²ÎÊý¡£´Ë×Ö·û³äµ±Òª´«µÝ¸ø¸Ã´æ´¢¹ý³ÌµÄ²ÎÊýÖµµÄռλ·û¡£¿ÉÒÔʹÓà SQLServerPreparedStatement ÀàµÄ setter ·½·¨Ö®Ò»Îª²ÎÊýÖ¸¶¨Öµ¡£¿ÉʹÓÃµÄ setter ·½·¨ÓÉ IN ²ÎÊýµÄÊý¾ÝÀàÐ;ö¶¨¡£
¡¡¡¡Ïò setter ·½·¨´«µÝֵʱ£¬²»½öÐèÒªÖ¸¶¨ÒªÔÚ²ÎÊýÖÐʹÓõÄʵ¼ÊÖµ£¬»¹±ØÐëÖ¸¶¨²ÎÊýÔÚ´æ´¢¹ý³ÌÖеÄÐòÊýλÖá£ÀýÈ磬Èç¹û´æ´¢¹ý³Ì°üº¬µ¥
Ïà¹ØÎĵµ£º
JavaÔÓ̸£¨¾Å£©££Struts
J2eeµÄ¿ªÔ´¿ò¼ÜºÜ¶à£¬±ÊÕßÖ»ÄܽéÉÜ×Ô¼ºÊìϤµÄ¼¸¸ö£¬ÆäËûµÄĿǰÔÚÖйúITÐÐÒµÓ¦Óõò»ÊǺܶࡣϣÍû´ó¼Ò¶ÔгöµÄ¿ò¼Ü²»ÒªÃ¤Ä¿µÄÍÆ³ç£¬Ê×ÏÈÒ»¶¨ÒªÊìϤËü±È¾ÉµÄµ½µ×ºÃÔÚÄÄÀеÄÀíÄîºÍÌØÐÔ ......
Èý£®ÓÅ»¯JAVA³ÌÐòÉè¼ÆºÍ±àÂ룬Ìá¸ßJAVA³ÌÐòÐÔÄܵÄһЩ·½·¨¡£
ͨ¹ýʹÓÃÒ»Ð©Ç°Ãæ½éÉܹýµÄ¸¨ÖúÐÔ¹¤¾ßÀ´ÕÒµ½³ÌÐòÖÐµÄÆ¿¾±£¬È»ºó¾Í¿ÉÒÔ¶ÔÆ¿¾±²¿·ÖµÄ´úÂë½øÐÐÓÅ»¯¡£Ò»°ãÓÐÁ½ÖÖ·½°¸£º¼´ÓÅ»¯´úÂë»ò¸ü¸ÄÉè¼Æ·½·¨¡£ÎÒÃÇÒ»°ã»áÑ¡
ÔñºóÕߣ¬ÒòΪ²»È¥µ÷ÓÃÒÔÏ´úÂëÒª±Èµ÷ÓÃһЩÓÅ»¯µÄ´úÂë¸üÄÜÌá ......
Java 6 RowSet ʹÓÃÍêÈ«ÆÊÎö
C# ÌṩÁË DataSet£¬¿ÉÒÔ½«Êý¾ÝÔ´ÖеÄÊý¾Ý¶ÁÈ¡µ½ÄÚ´æÖУ¬½øÐÐÀëÏß²Ù×÷£¬È»ºóÔÙͬ²½µ½Êý¾ÝÔ´¡£Í¬Ñù£¬ÔÚ Java ÖÐÒ²ÌṩÁËÀàËÆµÄʵÏÖ£¬¼´ RowSet¡£javax.sql.rowset °üÏ£¬¶¨ÒåÁËÎå¸ö²»Í¬µÄ RowSet ½Ó¿Ú£¬¹©²»Í¬µÄ³¡ºÏʹÓᣱ¾ÎĽ«·Ö±ð¶ÔÕâÎå¸ö RowSet µÄʹÓó¡ºÏÒÔ¼°Ï꾡Ó÷¨½øÐнéÉÜ£¬²¢ÇÒÃèÊöÊ ......
As a response for customer's question, I decided to write about using Like Operator in Linq to SQL queries.
Starting from a simple query from Northwind Database;
var query = from c in ctx.Customers
where c.City == "London"
&nbs ......