ASP创建ACCESS表或添加字段

王朝学院·作者佚名  2009-04-23
窄屏简体版  字體: 小  |  中  |  大  |  超大  

创建一张空表:

Sql="Create TABLE [表名]"

创建一张有字段的表:

Sql="Create TABLE [表名]([字段名1] MEMO NOT NULL, [字段名2] MEMO, [字段名3] COUNTER NOT NULL, [字段名4] DATETIME, [字段名5] TEXT(200), [字段名6] TEXT(200))

字段类型:

2 : "SmallInt", // 整型

3 : "Int", // 长整型

4 : "Real", // 单精度型

5 : "Float", // 双精度型

6 : "Money", // 货币

7 : "DateTime", // 日期时间

11 : "Bit", // 是否

13 : "TimeStamp",

17 : "TinyInt", // 字节

72 : "UniqueIdentifier", // 同步复制 ID

128 : "Binary",

129 : "Char",

130 : "NChar",

131 : "Decimal", // 小数

133 : "DateTime",

135 : "SmallDateTime",

200 : "VarChar",

201 : "Text",

202 : "VarChar", // 文本

203 : "Text", // 备注

204 : "Binary", // 二进制

205 : "Image" // OLE 对象

以下字段为无编码字段(NChar、NVarchar、NText型)

8,128,130,202,203,204,205

以下字段为按当前系统内码编码的字段(Asp中可用CodePage=936纠正为gb2312内码)

129,200,201

在现有的表中增加字段:

Sql="alter table [表名] add column [字段名] varchar(200)"

修改字段类型:

Sql="alter table [表名] Alter COLUMN 字段名] varchar(50)"

删除表:

Sql="Drop table [表名]"

删除字段:

sql="alter table [表名] drop [字段名]"

修改字段:Alter TABLE [表名] Alter COLUMN [字段名] 类型(大小) NULL

新建约束:Alter TABLE [表名] ADD CONSTRAINT 约束名 CHECK ([约束字段] <= '2007-1-1')

删除约束:Alter TABLE [表名] Drop CONSTRAINT 约束名

新建默认值:Alter TABLE [表名] ADD CONSTRAINT 默认值名 DEFAULT 'Gziu.CoM' FOR [字段名]

删除默认值:Alter TABLE [表名] Drop CONSTRAINT 默认值名

=======================================

conn.open connstr

sql="alter table [tablename] add hehe char(20)"

conn.execute(sql)

response.write("添加成功")

ACCESS新建数据库和表还不简单,有了表字段初始化就更简单

=======================================

<%

session("tablen")="news"

'news是已存在的表名

session("fieldsn")="c"

'要添加的字段名

connectionstring="provider=microsoft.jet.oledb.4.0;data source="&server.MapPath("data/qq.mdb")

set conn=server.createobject("adodb.connection")

conn.OPEN connectionstring

jhsql = " Alter Table "&session("tablen")&" add column "&session("fieldsn")&" real "

conn.execute(jhsql)

%>

================================

生成数据表,添加字段,其中id字段为自动增加,测试通过~~

Sub GenAutoIncrementFld()

set cn=server.CreateObject("ADODB.Connection")

set clx=server.CreateObject("ADOX.Column")

set cat=server.CreateObject("ADOX.Catalog")

set tblnam=server.CreateObject("ADOX.Table")

cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\网站制作\asp操作mdb\db\test.mdb"

Set cat.ActiveConnection = cn

tblnam.Name = "Test"

clx.ParentCatalog = cat

clx.Type = 3

clx.Name = "Id"

clx.Properties("AutoIncrement") = true

tblnam.Columns.Append clx

tblnam.Columns.Append "DataField",130,20

cat.Tables.Append tblnam

Set clx = Nothing

Set cat = Nothing

cn.Close

Set cn = Nothing

End Sub

call GenAutoIncrementFld

===================================

字段类型对应数值

''---- DataTypeEnum Values ----

Const adEmpty = 0

Const adTinyInt = 16

Const adSmallInt = 2

Const adInteger = 3

Const adBigInt = 20

Const adUnsignedTinyInt = 17

Const adUnsignedSmallInt = 18

Const adUnsignedInt = 19

Const adUnsignedBigInt = 21

Const adSingle = 4

Const adDouble = 5

Const adCurrency = 6

Const adDecimal = 14

Const adNumeric = 131

Const adBoolean = 11

Const adError = 10

Const adUserDefined = 132

Const adVariant = 12

Const adIDispatch = 9

Const adIUnknown = 13

Const adGUID = 72

Const adDate = 7

Const adDBDate = 133

Const adDBTime = 134

Const adDBTimeStamp = 135

Const adBSTR = 8

Const adChar = 129

Const adVarChar = 200

Const adLongVarChar = 201

Const adWChar = 130

Const adVarWChar = 202

Const adLongVarWChar = 203

Const adBinary = 128

Const adVarBinary = 204

Const adLongVarBinary = 205

Const adChapter = 136

Const adFileTime = 64

Const adPropVariant = 138

Const adVarNumeric = 139

Const adArray = &H2000

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航