为什么不去找找旧贴呢?  有SQL语句的呀

解决方案 »

  1.   

    我不太懂,但是朋友曾给过我例子,或许对你有帮助:   '先引用 Microsoft ActiveX Data Objects 2.x Library
       Dim ADO_Rset As New ADODB.Recordset
       Dim AdoStr As String
       '如果你的数据库不是 2000或以上的.那么Microsoft.Jet.OLEDB应该是3.0
       AdoStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\test.mdb;Persist Se
    curity Info=False"
       With ADO_Rset
          .ActiveConnection = AdoStr
          .CursorLocation = adUseClient
          .CursorType = adOpenStatic
          .LockType = adLockBatchOptimistic
          '修改"姓名"字段
          .Source = "ALTER TABLE 学生 ALTER COLUMN 姓名 text(30)"
          .Open
          '增加"性别"字段
          .Source = "ALTER TABLE 学生 ADD 性别 text(20)"
          .Open
          '删除"籍贯"字段
          .Source = "ALTER TABLE 学生 DROP COLUMN 籍贯"
          .Open
       End With
       Set ADO_Rset = Nothing
      

  2.   

    你的第一个问题是比较奇怪,按理说如果tablename表已经存在的话,就无法再创建一张表名一样的表,自然也就不会有后面的提示错误。
      

  3.   

    布尔型的数值在下列语句里是否写成
     "ALTER TABLE 学生 ALTER COLUMN 性别 Boolean"
    好象不行呀……
      

  4.   

    哈哈,散分散分,不能用Boolean 要改为bit.
      

  5.   

    to QQRN(笨QQ)
    用zergs(zergs) 的方法能成功
    至于各种数据类型是怎样表示的,请看下表Microsoft Access data type     OLE DB type indicator 
    BINARY (< 255 bytes)           DBTYPE_BYTES 
    BIT                             DBTYPE_BOOL 
    BYTE                           DBTYPE_UI1 
    COUNTER                       DBTYPE_I4 
    CURRENCY                      DBTYPE_CY 
    DATETIME                       DBTYPE_DATE 
    DOUBLE                         DBTYPE_R8 
    GUID                            DBTYPE_GUID 
    LONG                             DBTYPE_I4 
    LONGBINARY                       DBTYPE_BYTES 
    LONGTEXT                         DBTYPE_STR 
    SHORT                         DBTYPE_I2 
    SINGLE                         DBTYPE_R4 
    TEXT (< 255 bytes)             DBTYPE_STR 由此可见你的"ALTER TABLE 学生 ALTER COLUMN 性别 Boolean"应变为
    " ALTER TABLE 学生 ALTER COLUMN 性别 BIT "
    你试试,一定成功