科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件C++Builder 6操作MS SQL Server数据库的SQL集锦

C++Builder 6操作MS SQL Server数据库的SQL集锦

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

在查询和测试过程中,我将遇到的、正确的SQL语句汇总起来,并进行了分类整理,于是便有了这篇文章。

来源:中国软件网 2008年4月1日

关键字: 数据库 操作 C++ C Linux

  • 评论
  • 分享微博
  • 分享邮件
最近给中学做了一套有关MS SQL Server数据库的系统(可到http://www.itperson.com/software/下载限制版),做的过程中遇到了很多有关用SQL操作数据库、数据表和数据记录的问题,不同的数据库、不同的语言对SQL语句的认同性不一样。没有办法,只好自己到C++Builder 6 中去查帮助,到MS SQL Server去查帮助,不断的测试,才逐渐的拨开重雾,逐渐的对C++Builder 6中操作SQL Server的SQL语句有了一个大致的了解。
       在查询和测试过程中,我将遇到的、正确的SQL语句汇总起来,并进行了分类整理,于是便有了这篇文章。之所以发布,主要是希望碰到类似问题的朋友不必再去翻书或者查英文帮助一类的东西,直接拿去用就行了。也算是给大家备个份、提个醒之类的东西吧,希望对大家以后的编程能起到一定的裨益。

       一、建立数据库的语句:

    ADOQuery->SQL->Add("Create database [database_name]")

二、建立数据表的语句:

    1.不换行的方式:

    ADOQuery->SQL->Add("Create Table [Table_Name]([Field_1][Type_1](Length_1) Not NULL,[Field_2][Type_2](Length_2),[Field_3][Type_3](Length_3) Not NULL)")

    2.换行的方式:

    ADOQuery->SQL->Add("Create Table [Table_Name]([Field_1][Type_1](Length_1) Not NULL,"+
                             "[Field_2][Type_2](Length_2),"+
                             "[Field_3][Type_3](Length_3) Not NULL)")

    3.其中 [table_name] 可以用动态的方式书写:

      ...["+Dynamic_Table_Name+"]...

      或者部分动态

      ...["Table_Name_Part_1"+Table_Name_Part_2+"]...

三、删除数据表的语句:

   1. 删除只有以下唯一语句:

    ADOQuery->SQL->Add("drop table [Table_Name]")

四、插入记录

   1.一般法

   ADOQuery->SQL->Add("Insert into table_name(Field_1,Field_2,...Field_N) Values(Field_1_Value,Field_2_Value,...Field_N_Value) where condition")

   2.替换法

   AnsiString InsertField,InsertValue;
   InsertField=Field_1;
   InsertValues=Field_1_value;
   if(Edit_1->Text!="")
    {
    InsertField+=",Label_1->Caption";
    InsertValues+="''"+Edit_1->Text+"''";
     }
   ...
   ...
   if(Edit_N->Text!="")
    {
    InsertField+=",Label_N->Caption";
    InsertValues+="''"+Edit_N->Text+"''";
     }
  下面是SQL语句的写法:
  ADOQuery->SQL->Add("Insert into Table_Name("+InsertField+") Values("+InsertValues+") where condition")

五、更新记录

   1. 不换行法:

   ADOQuery->SQL->Add("Update Table_Name Set Field_1=''"+Edit_1->Text+"'',Field_2=''"+Edit_2->Text+"'',...Field_N=''"+Edit_N->Text+"'' where condition")

   2.判断条件换行法

   ADOQuery->SQL->Add("Update Table_Name set Field_1=''"+Edit_1->Text+"''")
   if(Edit_2->Text!="")
     {
      ADOQuery->SQL->Add(",Field_2=''"+Edit_2->Text+"''");
     }
   ...
   ...
   if(Edit_N->Text!="")
     {
      ADOQuery->SQL->Add(",Field_N=''"+Edit_N->Text+"''");
     }
   ADOQuery->SQL->Add(" where condition")

六、删除记录

   1.一般性删除法

   ADOQuery->SQL->Add("Delete * from Table_Name where condition")

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章