友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!阅读过程发现任何错误请告诉我们,谢谢!! 报告错误
一世书城 返回本书目录 我的书架 我的书签 TXT全本下载 进入书吧 加入书签

SQL 21日自学通(V3.0)(PDF格式)-第74章

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!






30…MAY…1996     BIKE    SPEC        23            8                PAID 



17…JAN…1996     BIKE    SPEC        76            11               PAID 



17…JAN…1996     LE    SHOPPE        76            5                PAID 



1…JUN…1996      LE    SHOPPE        10            3                PAID 



1…JUN…1996      AAA    BIKE         10            1                PAID 



1…JUL…1996      AAA    BIKE         76            4                PAID 



1…JUL…1996      AAA    BIKE         46            14               PAID 



11…JUL…1996     JACKS    BIKE       76            14               PAID 



INPUT/OUTPUT 



    SELECT * FROM PART 



PARTNUM          DESCRIPTION             PRICE 



54               PEDALS                  54。25 



42               SEATS                   24。50 



46               TIRES                   15。25 



23               MOUNTAIN BIKE           350。45 



76               ROAD BIKE               530。00 



10               TANDEM                  1200。00 



    当你输入数据以后  下一步是创建一个 ODBC  联接  请打开控制面板                               如果你使用的 



是 WINDOWS 95      WINDOWS 3。1 或 3。11     并双击 ODBC  图标 



注   有好几种风格的 SQL 引擎可以装放 ODBC                  VISUAL  C++    DELPHI 和 ORACLE  7 是 



     在安装的时候将 ODBC          作为其一部分的          幸运的是 ODBC        已经变得和打印机驱动一 



     样普遍了 



最初的 ODZBC 界面如下图所示 



                                                                                 290 


…………………………………………………………Page 291……………………………………………………………

SQL 21  日自学通(V1。0)                                     翻译人  笨猪 



   这一屏幕给出的当前的 ODBC 链接 你想创建一个新的链接 假设你使用的是 InterBase 



并且数据库的名字叫 TYSSQL      你是将你的工资让调 10%的那个数据库          那那么请按 ADD 



按钮并选择 InterBase  驱动 如下图所示 



   从这里你可以转到设置屏幕         并进行如下图的填写 



   你可以使用你自己的名字或是一些比较容易输入的东西  这要依据你为你自己设置的 



账号而定  在这里有一个技巧        至少对于我是这样的       就是 InterBase  想用哪一个名字作为 



数据库   如果你是 PC  用户或小型的数据库后台可能还需要不得不使用路径名                 路径句可 



以告诉数据库引擎在子网中的哪一台计算机中可以找到数据库 



                                                            291 


…………………………………………………………Page 292……………………………………………………………

SQL 21  日自学通(V1。0)                                  翻译人  笨猪 



使用 MS QUERY 来完成链接 



   现在我们已经建立了一个数据链接          我们需要使用一个更为方便的叫作 MS  QUERY 



的工具  该工具是与 VISUAL  C++一同载入的     我们通过使用它来解决足够的数据库和代 



码问题以补偿多次编译带来的费用  QUERY  通常安装在一个独立的程序组中                你可以找 



到它的  它的外观如下图所示 



   选择 FILE|NEW QUERY 你的 TTSSQL 链接将不会出现 所以我们需要按 OTHER 



按钮来调出 ODBC 数据源对话框  然后从中选择 TYSSQL        如下图 



   可以小型数据库的用户会不习惯进行登录           可是在这里你必需输入密码才能通过这一 



屏幕 



   加入表的对话框如下图所示        这里的表是与你所建立的数据库相关联的  选择 PART 



ORDERS 和 CUSTOMER 然后按关闭按钮 



                                                         292 


…………………………………………………………Page 293……………………………………………………………

SQL 21  日自学通(V1。0)                                     翻译人   笨猪 



   该工具有两个功能  首先是对 ODBC 链接作检查  如果它可以工作就会在程序中工作 



这一步可以让你确定问题是出在数据库方还是在程序一方  其次是生成查询并对其进行检 



查  在 SQL 中输入下边的语句并按 OK 按钮 



   WHERE CUSTOMER。NAME = ORDERS。NAME AND PART。PARTNUM = ORDERS。PARTNU 



   下图的结果是返回的结果 



   你只不过完成了归并操作          但是你归并的字段已经以图形的方式返回了               注意在 



NAME 与 PARTNUM 之间的链接 



   QUERY 是你在 WINDOWS    中工作的一个重要工具  它可以让你维护表和查询             你也 



可以使用它来创建表和维护数据          如果你使用 WINDOWS  的 ODBC  和 SQL 工作  你可以 



为你或你的电脑来购买它         它不像联网的 DOOM     那样有趣  但是它可以节省你的时间和 



                                                            293 


…………………………………………………………Page 294……………………………………………………………

SQL 21  日自学通(V1。0)                                       翻译人   笨猪 



金钱   现在我们已经建立了 ODBC 链接        我们也可以在编程中使用它 



将 VISUAL C++ 与 SQL 结合使用 



注  在附件 B 中有本例的源代码 



   启动 Visual  C++并调用 AppWizard 如下图所示     你的工程名字和子目录的名字可能 



是不一样的 



   按 OPTION 按钮并填写下图 



   按 Data Source 按钮并对下图作出选择 



                                                               294 


…………………………………………………………Page 295……………………………………………………………

SQL 21  日自学通(V1。0)                                            翻译人    笨猪 



    现在你可以从 TYSSQL 数据库中选择 CUSTOMER 表了              退回到 AppWizard  的基本屏 



幕并按两下 OK 按钮       再按一下 OK 后会显示 New Application Information  如下图所示 



    当程序生成以后  你需要使用原代码编辑器来设计你的主屏幕  选择 Tools | App Studio 



来装入 App  Studio  你需要设计的表单是很简单的             只要你能在翻阅时显示足够的表列就 



行  你可以参照下图来设计表单 



                                                                     295 


…………………………………………………………Page 296……………………………………………………………

SQL 21  日自学通(V1。0)                                                            翻译人     笨猪 



     注   这个程序对于你所链接的表来说是很完美的                            这也是使用 MicroSoft  Wizard   或 



Borland Expert  的好处之一 



     将你的工作保存           然后按 ALT+TAB  键回到编译器来编译这个程序  如果一切正常 



你将会得到如下图所示的输出                   如果你没有得到  那么你需要回头检查并再次尝试 



     多么好的一个程序啊              要知道你现在还没有写一行代码  用箭头回退到数据库处                                  你 



可以发现数据的排序与它的输出是相同的                          它们并没有按字母的次序排列                   除非你已经使 



用了这个方法           你该如何让它们排序呢 



     你所链接的数据库被封装在一个叫 Ctyssqlset                   的组中  它是 wizard        为你创建了  请看 



头文件 



    // tyssqset。h : interface of the CTyssqlSet class 



    // 



    //////////////////////////////////////////////////////////////////////// 



     class CTyssqlSet : public CRecordset 



     { 



     DECLARE_DYNAMIC(CTyssqlSet) 



    public: 



     CTyssqlSet(CDatabase* pDatabase = NULL); 



    // Field/Param Data 



                                                                                       296 


…………………………………………………………Page 297……………………………………………………………

SQL 21  日自学通(V1。0)                                                                 翻译人      笨猪 



     //{{AFX_FIELD(CTyssqlSet; CRecordset) 



     Cstring        m_NAME; 



     Cstring        m_ADDRESS; 



     Cstring        m_STATE; 



     Cstring        m_ZIP; 



     Cstring        m_PHONE; 



     Cstring        m_REMARKS; 



     //}}AFX_FIELD 



     // Implementation 



     protected: 



     virtual CString GetDefaultConnect();// Default connection string 



     virtual CString GetDefaultSQL();// default SQL for Recordset 



     virtual void DoFieldExchange(CFieldExchange* pFX);// RFX support 



     } 



分析 



要知道在表中所有列的成员都是可变的                                   请注意下边的的 GetDefaultConnect                 和 



GetDefaultSQL 函数  这里是 tyssqset。cpp 的 implementations 部分 



     CString CTyssqlSet::GetDefaultConnect() 



     { 



     return ODBC;DSN=TYSSQL;〃; 



     } 



     CString CTyssqlSet::GetDefaultSQL() 



     { 



     return 〃CUSTOMER〃; 



     } 



GetDefaultConnect  用以确认数据库链接      
返回目录 上一页 下一页 回到顶部 0 0
未阅读完?加入书签已便下次继续阅读!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!