alter table 好象只能修改字段的类型和宽度。

解决方案 »

  1.   

    是用 alter table <tablename> 来修改
    不过,你可能需要先删除,再添加的方式来完成对字段名的修改
    即alter table <tablename> drop <fieldname> 
      alter table <TbaleName> add <fieldname>
    大致上是这样的,具体的你还得去看帮助,说不定有直接修改字段名的方法呢。我很久没有使用了,不大清楚
      

  2.   

    先用select fieldname from tablename 的方法将这个字段备份出来
    然后alter table <tablename> drop <fieldname> <fielddefine>
    最后alter table <tablename> add <fieldname>给你一个我的例字:
    procedure TForm1.Button1Click(Sender: TObject);
    var sql_array :array  [0..26] of string;
        i:integer;
    begin    sql_array[0]:='ALTER TABLE partstemp DROP COLUMN h03_xl';
        try
        ///给表修改字段名称
        sql_array[0]:='ALTER TABLE partstemp DROP COLUMN h03_xl';
        sql_array[1]:='ALTER TABLE partstemp DROP COLUMN h04_wg';
        sql_array[2]:='ALTER TABLE partstemp DROP COLUMN h05_jx';
        sql_array[3]:='ALTER TABLE partstemp DROP COLUMN h06_lp';
        sql_array[4]:='ALTER TABLE partstemp add COLUMN h03_sk float';  //
        sql_array[5]:='ALTER TABLE partstemp add COLUMN h04_zb float';  //
        sql_array[6]:='ALTER TABLE partstemp add COLUMN h05_qy float';   //
        sql_array[7]:='ALTER TABLE partstemp add COLUMN h06_zx float';   //
        sql_array[8]:='ALTER TABLE partstemp add COLUMN h16_wx float';  //
      ///
        sql_array[9]:='ALTER TABLE local_parts_borrow drop COLUMN h03_xl';
        sql_array[10]:='ALTER TABLE local_parts_borrow DROP COLUMN h04_wg';
        sql_array[11]:='ALTER TABLE local_parts_borrow DROP COLUMN h05_jx';
        sql_array[12]:='ALTER TABLE local_parts_borrow DROP COLUMN h06_lp';
        sql_array[13]:='ALTER TABLE local_parts_borrow add COLUMN h03_sk float';  //
        sql_array[14]:='ALTER TABLE local_parts_borrow add COLUMN h04_zb float';  //
        sql_array[15]:='ALTER TABLE local_parts_borrow add COLUMN h05_qy float';   //
        sql_array[16]:='ALTER TABLE local_parts_borrow add COLUMN h06_zx float';   //
        sql_array[17]:='ALTER TABLE local_parts_borrow add COLUMN h16_wx float';  //
        // 
        sql_array[18]:='ALTER TABLE tbl_temp_partsinfo DROP COLUMN h03_xl';
        sql_array[19]:='ALTER TABLE tbl_temp_partsinfo DROP COLUMN h04_wg';
        sql_array[20]:='ALTER TABLE tbl_temp_partsinfo DROP COLUMN h05_jx';
        sql_array[21]:='ALTER TABLE tbl_temp_partsinfo DROP COLUMN h06_lp';
        sql_array[22]:='ALTER TABLE tbl_temp_partsinfo add COLUMN h03_sk float';  //
        sql_array[23]:='ALTER TABLE tbl_temp_partsinfo add COLUMN h04_zb float';  //
        sql_array[24]:='ALTER TABLE tbl_temp_partsinfo add COLUMN h05_qy float';   //
        sql_array[25]:='ALTER TABLE tbl_temp_partsinfo add COLUMN h06_zx float';   //
        sql_array[26]:='ALTER TABLE tbl_temp_partsinfo add COLUMN h16_wx float';  //    for i:=0 to 26 do
        begin
          query1.SQl.Clear ;
          query1.sql.add(sql_array[i]);
          query1.ExecSQL ;
        end;
          showmessage('祝贺你,升级成功!');
        except
          showmessage('升级不成功!(可能是已经升级)请重新来一遍!');
        end;
        end;