¡¾Õª¡¿Power Builder Öж¯Ì¬SQLÓï¾äµÄд·¨
PowerBuilderÊÇĿǰ×îÁ÷ÐеÄÊý¾Ý¿â¿ª·¢¹¤¾ßÖ®Ò»¡£PowerBuilderÌṩÁËÔÚ³ÌÐò´úÂëÖмÓÈëǶÈëʽSQLÓï¾äµÄ¹¦ÄÜÀ´Ö§³Ö¶ÔÊý¾Ý¿âµÄ·ÃÎÊ¡£µ«ÕâÖÖǶÈëʽSQLÓï¾äÖ»ÄÜÖ§³ÖһЩ¹Ì¶¨µÄ±ê×¼µÄSQLÓï¾ä£¬¼´ÔÚ½øÐгÌÐò´úÂë±àÒë´¦ÀíʱÕâЩSQLÓï¾ä±ØÐëÊÇÈ·¶¨µÄ£¬ÀýÈ磺¶ÔÄÄÕűíÄö×ֶνøÐвÙ×÷ÔÚ³ÌÐò´úÂëÖÐÊǹ̶¨Ð´Ã÷µÄ£¬ÁíÍâÕâÖÖ·½Ê½Ò²²»ÄÜÖ´ÐÐÏñCreat Table,Creat DatabaseµÈÕâЩÊý¾Ý¿â¶¨ÒåµÄÓï¾ä(DDL)¡£
Òò´ËÕâÖÖǶÈëʽSQLÓï¾äÔÚʵ¼ÊÓ¦ÓÃÖÐÓÐÒ»¶¨µÄ¾ÖÏÞÐÔ¡£Îª¿Ë·þÕâÖÖ·½Ê½µÄ¾ÖÏÞÐÔ£¬¿ÉÒÔʹÓÃPowerBuilderÌṩµÄ¶¯Ì¬SQLÓï¾ä£¬ÕâÖÖ¶ÔÊý¾Ý¿â·ÃÎʵķ½Ê½¿ÉÒÔÍê³ÉǶÈëʽSQLÓï¾äÎÞ·¨ÊµÏֵŦÄÜ¡£È罨¿â¡¢½¨±íÕâÒ»ÀàµÄÊý¾Ý¿â¶¨ÒåÓï¾ä(DDL)£»Æä´Î£¬ÓÉÓÚ¶¯Ì¬SQLÓï¾äÔÊÐíÔÚÖ´ÐÐʱ²ÅÈ·¶¨µ½µ×ÒªÖ´ÐÐÔõÑùµÄSQLÓï¾ä£¬Òò´ËʹÓö¯Ì¬SQLÓï¾ä¿ÉÒÔʹ³ÌÐòʵÏÖ²ÎÊý»¯Éè¼Æ£¬¾ßÓкܴóµÄÁé»îÐÔºÍͨÓÃÐÔ¡£
Ò»¡¢¶¯Ì¬SQLÓï¾äµÄÓ¦Ó÷ÖÎö PowerBuilderÌṩÁËËÄÖÖ¸ñʽµÄ¶¯Ì¬SQLÓï¾ä£¬Ã¿ÖÖ¸ñʽ¶¼ÓÐ×Ô¼º²»Í¬µÄÌØµãºÍ×÷Óá£ÏÂÃæÎÒÃǶԸ÷ÖÖ¸ñʽµÄ¾ßÌåʹÓ÷½·¨·Ö±ð¼ÓÒÔ˵Ã÷¡£
¡¡¡¡(Ò»)µÚÒ»ÖÖ¸ñʽ
¡¡¡¡µ±Ö´ÐÐûÓÐÊäÈë²ÎÊý²¢ÇÒûÓзµ»Ø½á¹û¼¯µÄSQLÓï¾äʱ¿ÉÒÔʹÓÃÕâÖÖ¸ñʽ£¬ÕâÖÖ¸ñʽʹÓñȽϼòµ¥£¬ÆäʵÏֵIJÙ×÷Ò²±È½ÏÉÙ¡£
¡¡¡¡1Óï·¨
¡¡¡¡EXECUTE IMMEDIATE SQLStatement{USING TransactionObject}£»
¡¡¡¡ÆäÖÐSQLStatementÊÇÒªÖ´ÐеÄSQLÓï¾ä£¬¿ÉÒÔÖ±½ÓÓÃÒýºÅ½«ÒªÖ´ÐеÄSQLÒýÆðÀ´Ó㬻òÕßÓÃ×Ö·û´®±äÁ¿µÄÐÎʽÌṩSQLÓï¾ä¡£Í¨¹ýʹÓÃ×Ö·û´®±äÁ¿¿ÉÒÔÔÚ¾ßÌåÖ´ÐеÄʱºò²ÅÖ¸¶¨ÒªÖ´ÐÐʲôÑùµÄSQLÓï¾ä¡£TransactionObjectÊÇÓû§ËùʹÓõÄÊÂÎñ¶ÔÏó£¬È±Ê¡ÎªSQLCA¡£
¡¡¡¡2Ó¦ÓÃʵÀý
¡¡¡¡¢Ù½¨Á¢Ò»ÕÅÊý¾Ý¿â±í(base)£¬SQLÓï¾äµÄ±íÊöÓÃÒýºÅÒýÆðÀ´Ö±½ÓʹÓá£
¡¡¡¡EXECUTE IMMEDIATE‘CREATE TABLE base(code char(6),name char(30))’USING SQLCA£»
¡¡¡¡¢ÚÖ´ÐжÔÊý¾Ý¿â¼Ç¼µÄ²Ù×÷£¬ÔÚ±íbaseÖвåÈëÒ»Ìõ¼Ç¼£¬SQLÓï¾äͨ¹ý×Ö·û´®±äÁ¿´«µÝÖ´ÐÐÓï¾ä¡£
¡¡¡¡STRING lsSQL
¡¡¡¡LsSQL=”INSERT INTO TABLE base VALUES(’320201’£¬’ÊÐÖÐÇøÖ§ÐÐ’)”
¡¡¡¡EXECUTE IMMEDIATE:lsSQL£»
¡¡¡¡(¶þ)µÚ¶þÖÖ¸ñʽ
¡¡¡¡µ±Ö´ÐдøÊäÈë²ÎÊýµ«Ã»Óзµ»Ø½á¹û¼¯Ê±µÄSQLÓï¾ä¿ÉÒÔ²ÉÓõڶþÖÖ¸ñʽ¡£¸Ã¸ñʽ²»½ö¿ÉÒÔ¶¯Ì¬µØÖ¸¶¨ÒªÖ´ÐеÄSQLÓï¾ä£¬Í¬Ê±»¹¿ÉÒÔ¶¯Ì¬µØÈ·¶¨SQLÓï¾äËùÐèÒªµÄ²ÎÊýÖµ¡£
¡¡¡¡1Óï·¨
¡¡¡¡PREPARE DynamicStagingArea from SQLStatement{USING TransactionOb
Ïà¹ØÎĵµ£º
create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',
@pagesize int output,--ÿҳÏÔʾ¼Ç¼ÌõÊý
@currentpage int output,--µÚ¼¸Ò³
@orderid nvarchar(50),--Ö÷¼üÅÅÐò
@sort int,--ÅÅÐò·½Ê½£¬1±íʾÉýÐò£¬0±íʾ½µÐòÅÅÁÐ
......
µ½Ä¿Ç°ÎªÖ¹£¬ÎÒÃÇѧµ½Á˽«ÈçºÎ°Ñ×ÊÁÏÓɱí¸ñÖÐÈ¡³ö¡£µ«ÊÇÕâЩ×ÊÁÏÊÇÈç¹û½øÈëÕâЩ±í¸ñµÄÄØ£¿ Õâ¾ÍÊÇÕâÒ»Ò³ (INSERT INTO) ºÍÏÂÒ»Ò³ (UPDATE) ÒªÌÖÂ۵ġ£
»ù±¾ÉÏ£¬ÎÒÃÇÓÐÁ½ÖÖ×÷·¨¿ÉÒÔ½«×ÊÁÏÊäÈë±í¸ñÖÐÄÚ¡£Ò»ÖÖÊÇÒ»´ÎÊäÈëÒ»±Ê£¬ÁíÒ»ÖÖÊÇÒ»´ÎÊäÈëºÃ¼¸±Ê¡£ ÎÒÃÇÏÈÀ´¿´Ò»´ÎÊäÈëÒ»±ÊµÄ·½Ê½¡£
ÒÀÕÕ¹ßÀý£¬ÎÒÃÇÏȽéÉÜÓï·¨¡£Ò»´ÎÊäÈ ......
ÔÚÕâÒ»Ò³ÖУ¬ÎÒÃÇÁгöËùÓÐÔÚÕâ¸öÍøÕ¾ÓÐÁгö SQL Ö¸ÁîµÄÓï·¨¡£ÈôÒª¸üÏ꾡µÄ˵Ã÷£¬ÇëµãѡָÁîÃû³Æ¡£
ÕâÒ»Ò³µÄÄ¿µÄÊÇÌṩһ¸ö¼ò½àµÄ SQL Óï·¨×öΪ¶ÁÕ߲ο¼Ö®Óá£ÎÒÃǽ¨ÒéÄúÏÖÔھͰ´ Control-D ½«±¾Ò³¼ÓÈëÄúµÄ¡ºÎÒµÄ×î°®¡»¡£
Select
SELECT "À¸Î»" from "±í¸ñÃû"
Distinct
SELECT DISTINCT "À¸Î»"
from "±í¸ñÃû"
......
#region µÃµ½ËùÓб¾µØÍøÂçÖпÉʹÓõÄSQL·þÎñÆ÷Áбí
/// <summary>
/// µÃµ½ËùÓб¾µØÍøÂçÖпÉʹÓõÄSQL·þÎñÆ÷Áбí
/// </summary>
/// <param name="p_strServerList">·þÎñÆ÷Áбí</param& ......
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace BuildQuery
{
/// <summary>
/// ʹÓÃÌṩµÄÊý¾Ý½¨Á¢Ò»¸öSQL²éѯ
/// </summary>
public class BuildQuery
{
#region ÀàµÄ±äÁ¿
int numFieldsCount, ......