注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

鑫淼梦园的博客

圆你的梦想 从这里开始

 
 
 

日志

 
 

delphi给access数据库创建新表  

2013-05-07 02:15:56|  分类: delphi xe3 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

delphi给access数据库创建新表

ADOQ1.SQL.Text:='CREATE   TABLE   BookTable   '  
              +'(No1   COUNTER   PRIMARY   KEY,'  
              +'ItemName1   TEXT,TreeNo1   INTEGER,HasParent1   BIT,'  
              +'ParentNo1   INTEGER,ItemType1   INTEGER,ItemText1   IMAGE,'  
              +'ItemAttr1   IMAGE,ADDTime1   DATETIME)';  
  {   注释:'BookTable'是表名   }  
  {               'No1   COUNTER   PRIMARY   KEY'的意思是创建一个叫:'No1'的键,'PRIMARY   KEY'是将其}  
  {         设置为主键,'COUNTER'是自动编号                                                                                             }  
  {               'TreeNo1   INTEGER'是创建一个叫'TreeNo1'的'INTEGER'整数型键                                 }  
  {               'ItemName1   TEXT'是创建一个叫'ItemName1'的'TEXT'字符型键                                     }  
  {               'HasParent1   BIT'是创建一个叫'HasParent1'的'BIT'布尔型键                                     }  
  {               以下省略键名解释直接解释类型                                                                                           }  
  {               'IMAGE'是OLE类型可存储任何东西图片,文件,流                                                               }  
  {               'DATETIME'是时间类型                                                                                                           

unit   Unit1;  
   
  interface  
   
  uses  
      Windows,   Messages,   SysUtils,   Variants,   Classes,   comobj,adox_tlb,Graphics,   Controls,   Forms,  
      Dialogs,   StdCtrls;  
   
  type  
      TForm1   =   class(TForm)  
          Button1:   TButton;  
          Edit1:   TEdit;  
          Edit2:   TEdit;  
          procedure   Button1Click(Sender:   TObject);  
      private  
          {   Private   declarations   }  
      public  
          {   Public   declarations   }  
      end;  
   
  var  
      Form1:   TForm1;  
   
  implementation  
   
  {$R   *.dfm}  
   
  procedure   TForm1.Button1Click(Sender:   TObject);  
  var  
      Catalog:   _Catalog;  
      Table:   _Table;  
      Index   :   _Index;  
      //FKey   :   _key;  
      strCon:string;//定义连接字符串  
      yourname:string;  
      yourpwd:string;  
  begin  
          yourname:=trim(edit1.Text);  
          yourpwd:=trim(edit2.text);  
          Catalog   :=   CoCatalog.Create;  
          strCon   :=   'Provider=Microsoft.Jet.OleDB.4.0;'  
          //通过Jet   OleDb直接操作Access数据库  
          +'Data   Source=c:\windows\desktop\'+yourname+'.mdb;'  
          //数据库位置  
          +'Jet   OLEDB:Engine   Type=5;'  
          //Jet   4.x格式,如为4,则Jet   3.x格式  
          +'Locale   Identifier=0x0804;'  
            //支持简体中文(一定要有)  
          +'Jet   OLEDB:Database   Password='+yourpwd;//修改密码也在此;  
          //加入密码  
          Catalog.Create(strCon);   //建立数据库  
          {建立数据表和索引}  
          Catalog.Set_ActiveConnection(strCon);  
          //连接到数据库  
          with   Catalog   do  
          begin   //建立数据表  
          Table:=   CoTable.Create();   //建立Table实例  
          with   Table   do  
          begin  
          Name   :=   'MyTable1';         //建表   MyTable1  
          Table.ParentCatalog   :=   Catalog   ;  
          Columns.Append('ID',adInteger,8);            
          Columns.Item['ID'].Properties.Item['AutoIncrement'].Value   :=   true;             
          Columns.Append('Name',adVarWChar,40);  
          Columns.Append('Parent_ID',adInteger,8);  
          Columns.Item['Parent_ID'].Properties['Default'].Value   :=   0;                                                                        
          Columns.Append('Sort_ID',adInteger,8);  
          Columns.Append('Counter',adInteger,8);  
          Columns.Item['Counter'].Properties.Item['Default'].Value   :=   0;  
   
          //数据类型详见MDAC   SDK  
          Tables.Append(Table);     //建表   MyTable1  
          Index   :=   CoIndex.Create()   as   _Index;   //建立索引  
          with   Index   do  
          begin  
          Name:='Idx1';  
          PrimaryKey   :=   True   ;  
          Unique   :=   True;  
          Columns.Append('ID',adInteger,8);  
          _Release;  
          end;  
          Table.Indexes.Append(Index,EmptyParam);   
          Table._Release;  
          Table:=   CoTable.Create();   
          end;                       //with   table   do  
          end;                       //with   catalog   do  
     end;     
  end.
//在DELPHI里动态创建一个access表
adoquery1.close;
adoquery1.sql.clear;
adoquery1.sql.add('create table tmp_rece( 学号 char(20),姓名 char(20),班级 char(20),dat datetime)');
adoquery1.execsql;
adoquery1.close;
adoquery1.sql.clear;
adoquery1.sql.add('select * from tmp_rece');
adoquery1.Open;

  评论这张
 
阅读(597)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017