当前位置: 首页 > 图文教程 > 网络编程 > ASP > access数据库的一些少用操作,ASP,创建数据库文件,创建表,创建字段,ADOX

ASP
对连串英文自动换行的解决方法 IE5.5
怎样写你自己的EMAIL组件(原理)
ASP中有关timeout超时的体会
用ASP实现从SQL Server导出数据到Access
ASP向NT域中加一个用户
ASP乱码的解决方法
关于 aspsmartupload 注册问题
利用XML不离开页面刷新数据
IIS 处理 SEARCH 请求漏洞
不用组件实现上载功能(1)
不用组件实现上载功能(2)
在网页中实现OICQ里的头像选择的下拉框
仅用xsl和asp实现分页功能
如何使用context()方法将数据置入表格(XML)
利用ASP从远程服务器上接收XML数据
将数据库里面的内容生成EXCEL
怎样在ASP里面创建统计图表
加密你的Access数据库
利用global.asp定时执行ASP
加密QueryString数据

access数据库的一些少用操作,ASP,创建数据库文件,创建表,创建字段,ADOX


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 105 ::
收藏到网摘: n/a

复制代码 代码如下:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%
if Trim(Request.Form("TableName"))
'----设置 打开数据库连接
dbs="Data Source="+server.mappath("database.mdb")+";Provider=Microsoft.Jet.OLEDB.4.0;"
set conn=server.createobject("ADODB.connection")
conn.open dbs

'定义ADOX,指定连接
set ADOX =server.createobject("ADOX.Catalog")
Set ADOX.ActiveConnection = conn
'创建Table,写入属性
Set objTable= Server.CreateObject("ADOX.Table")
'objTable.name="Table3"
objTable.name=Trim(Request.Form("TableName"))' 表单获取
'objTable.parentCatalog = ADOX
'定义第一个字段
set objColumn = server.createObject("ADOX.Column")
'Set objColumn.parentCatalog = ADOX
objColumn.name="Column1"
objColumn.type=202 '数据类型202代表文本,
objColumn.Attributes=2 '1--必填字段,2--非必填
objTable.Columns.Append objColumn
set objColumn = nothing '清除第一个字段信息

'定义第二个字段
set objColumn = server.createObject("ADOX.Column")
'Set objColumn.parentCatalog = ADOX
objColumn.name="Column2"
objColumn.type=3
objColumn.Attributes=2
objTable.Columns.Append objColumn
set objColumn = nothing
ADOX.Tables.Append objTable
Set ADOX = Nothing

%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>建立表格和字段</title>
<style type="text/css">
<!--
body,td,th {
font-size: 12px;
}
-->
</style></head>
<body>
<p>'使用<strong> Column</strong> 对象的属性和集合,可以: <br />
'使用 Name 属性标识列。<br />
'使用 Type 属性指定列的数据类型。<br />
'使用 Attributes 属性确定列是否为固定长度,或者是否能包含 Null 值。<br />
'使用 DefinedSize 属性指定列的最大尺寸。<br />
'对于数字数据值,使用 NumericScale 属性指定范围。<br />
'对于数字数据值,使用 Precision 属性指定最大精度。<br />
'使用 ParentCatalog 属性指定列的父 Catalog。<br />
'对于键列,使用 RelatedColumn 属性指定相关表中相关列的名称。<br />
'对于索引列,使用 SortOrder 属性指定排序顺序是升序还是降序。</p>
<p>数据类型如下表:</p>
<TABLE border=1 cellpadding=4 cellspacing=4 cols=4 frame=box rules=all width=100%>
<TR VALIGN="top">
<TH width=32%>常量</TH>
<TH width=13%>值</TH>
<TH width=55%>说明</TH>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>AdArray<BR>
</B>(不适用于 ADOX。)</TD>
<TD class=T width=13%>0x2000
<P class=T></P>
</TD>
<TD class=T width=55%>一个标志值,通常与另一个数据类型常量组合,指示该数据类型的数组。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adBigInt</B>
<P class=T></P>
</TD>
<TD class=T width=13%>20</TD>
<TD class=T width=55%>指示一个八字节的有符号整数 (DBTYPE_I8)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adBinary</B>
<P class=T></P>
</TD>
<TD class=T width=13%>128</TD>
<TD class=T width=55%>指示一个二进制值 (DBTYPE_BYTES)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adBoolean</B>
<P class=T></P>
</TD>
<TD class=T width=13%>11</TD>
<TD class=T width=55%>指示一个布尔值 (DBTYPE_BOOL)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adBSTR</B>
<P class=T></P>
</TD>
<TD class=T width=13%>8</TD>
<TD class=T width=55%>指示以 Null 终止的字符串 (Unicode) (DBTYPE_BSTR)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adChapter</B>
<P class=T></P>
</TD>
<TD class=T width=13%>136</TD>
<TD class=T width=55%>指示一个四字节的子集值,标识子<A HREF="mddefrowset.htm">行集合</A>中的行 (DBTYPE_HCHAPTER)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adChar</B>
<P class=T></P>
</TD>
<TD class=T width=13%>129</TD>
<TD class=T width=55%>指示一个字符串值 (DBTYPE_STR)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adCurrency</B>
<P class=T></P>
</TD>
<TD class=T width=13%>6</TD>
<TD class=T width=55%>指示一个货币值 (DBTYPE_CY)。货币是一个定点数字,小数点右侧有四位数字。该值存储为八字节、范围为 10,000 的有符号整数。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adDate</B>
<P class=T></P>
</TD>
<TD class=T width=13%>7</TD>
<TD class=T width=55%>指示日期值 (DBTYPE_DATE)。日期保存为双精度数,数字的整数部分是从 1899 年 12 月 30 日算起的天数,小数部分是一天当中的片段时间。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adDBDate</B>
<P class=T></P>
</TD>
<TD class=T width=13%>133</TD>
<TD class=T width=55%>指示日期值 (yyyymmdd) (DBTYPE_DBDATE)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adDBTime</B>
<P class=T></P>
</TD>
<TD class=T width=13%>134</TD>
<TD class=T width=55%>指示时间值 (hhmmss) (DBTYPE_DBTIME)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adDBTimeStamp</B>
<P class=T></P>
</TD>
<TD class=T width=13%>135</TD>
<TD class=T width=55%>指示日期/时间戳(yyyymmddhhmmss 加十亿分之一的小数)(DBTYPE_DBTIMESTAMP)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adDecimal</B>
<P class=T></P>
</TD>
<TD class=T width=13%>14</TD>
<TD class=T width=55%>指示具有固定精度和范围的确切数字值 (DBTYPE_DECIMAL)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adDouble</B>
<P class=T></P>
</TD>
<TD class=T width=13%>5</TD>
<TD class=T width=55%>指示一个双精度浮点值 (DBTYPE_R8)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adEmpty</B>
<P class=T></P>
</TD>
<TD class=T width=13%>0</TD>
<TD class=T width=55%>指定没有值 (DBTYPE_EMPTY)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adError</B>
<P class=T></P>
</TD>
<TD class=T width=13%>10</TD>
<TD class=T width=55%>指示一个 32 位的错误代码 (DBTYPE_ERROR)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adFileTime</B>
<P class=T></P>
</TD>
<TD class=T width=13%>64</TD>
<TD class=T width=55%>指示一个 64 位的值,表示从 1601 年 1 月 1 日开始的 100 个十亿分之一秒间隔的数量 (DBTYPE_FILETIME)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adGUID</B>
<P class=T></P>
</TD>
<TD class=T width=13%>72</TD>
<TD class=T width=55%>指示全局唯一标识符 (GUID) (DBTYPE_GUID)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adIDispatch</B>
<P class=T></P>
</TD>
<TD class=T width=13%>9</TD>
<TD class=T width=55%>指示指向 COM 对象上 <B>IDispatch</B> 接口的指针 (DBTYPE_IDISPATCH)。
<P class=T><B>注意 </B>ADO 目前不支持这种数据类型。使用它可能导致不可预料的结果。</P>
</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adInteger</B>
<P class=T></P>
</TD>
<TD class=T width=13%>3</TD>
<TD class=T width=55%>指示一个四字节的有符号整数 (DBTYPE_I4)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adIUnknown</B>
<P class=T></P>
</TD>
<TD class=T width=13%>13</TD>
<TD class=T width=55%>指示指向 COM 对象上 <B>IUnknown</B> 接口的指针 (DBTYPE_IUNKNOWN)。
<P class=T><B>注意 </B>ADO 目前不支持这种数据类型。使用它可能导致不可预料的结果。</P>
</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adLongVarBinary</B>
<P class=T></P>
</TD>
<TD class=T width=13%>205</TD>
<TD class=T width=55%>指示一个长二进制值(仅限于 <B>Parameter</B> 对象)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adLongVarChar</B>
<P class=T></P>
</TD>
<TD class=T width=13%>201</TD>
<TD class=T width=55%>指示一个长字符串值(仅限于 <B>Parameter</B> 对象)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adLongVarWChar</B>
<P class=T></P>
</TD>
<TD class=T width=13%>203</TD>
<TD class=T width=55%>指示一个以 Null 终止的长 Unicode 字符串值(仅限于 <B>Parameter</B> 对象)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adNumeric</B>
<P class=T></P>
</TD>
<TD class=T width=13%>131</TD>
<TD class=T width=55%>指示具有固定精度和范围的确切数字值 (DBTYPE_NUMERIC)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adPropVariant</B>
<P class=T></P>
</TD>
<TD class=T width=13%>138</TD>
<TD class=T width=55%>指示一个 Automation PROPVARIANT (DBTYPE_PROP_VARIANT)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adSingle</B>
<P class=T></P>
</TD>
<TD class=T width=13%>4</TD>
<TD class=T width=55%>指示一个单精度浮点值 (DBTYPE_R4)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adSmallInt</B>
<P class=T></P>
</TD>
<TD class=T width=13%>2</TD>
<TD class=T width=55%>指示一个双字节的有符号整数 (DBTYPE_I2)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adTinyInt</B>
<P class=T></P>
</TD>
<TD class=T width=13%>16</TD>
<TD class=T width=55%>指示一个单字节的有符号整数 (DBTYPE_I1)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adUnsignedBigInt</B>
<P class=T></P>
</TD>
<TD class=T width=13%>21</TD>
<TD class=T width=55%>指示一个八字节的无符号整数 (DBTYPE_UI8)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adUnsignedInt</B>
<P class=T></P>
</TD>
<TD class=T width=13%>19</TD>
<TD class=T width=55%>指示一个四字节的无符号整数 (DBTYPE_UI4)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adUnsignedSmallInt</B>
<P class=T></P>
</TD>
<TD class=T width=13%>18</TD>
<TD class=T width=55%>指示一个双字节的无符号整数 (DBTYPE_UI2)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adUnsignedTinyInt</B>
<P class=T></P>
</TD>
<TD class=T width=13%>17</TD>
<TD class=T width=55%>指示一个单字节的无符号整数 (DBTYPE_UI1)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adUserDefined</B>
<P class=T></P>
</TD>
<TD class=T width=13%>132</TD>
<TD class=T width=55%>指示一个用户定义的变量 (DBTYPE_UDT)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adVarBinary</B>
<P class=T></P>
</TD>
<TD class=T width=13%>204</TD>
<TD class=T width=55%>指示一个二进制值(仅限于 <B>Parameter</B> 对象)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adVarChar</B>
<P class=T></P>
</TD>
<TD class=T width=13%>200</TD>
<TD class=T width=55%>指示一个字符串值(仅限于 <B>Parameter</B> 对象)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adVariant</B>
<P class=T></P>
</TD>
<TD class=T width=13%>12</TD>
<TD class=T width=55%>指示一个 Automation <B>Variant</B> (DBTYPE_VARIANT)。
<P class=T><B>注意 </B>ADO 目前不支持这种数据类型。使用它可能导致不可预料的结果。</P>
</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adVarNumeric</B>
<P class=T></P>
</TD>
<TD class=T width=13%>139</TD>
<TD class=T width=55%>指示一个数字值(仅限于 <B>Parameter</B> 对象)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adVarWChar</B>
<P class=T></P>
</TD>
<TD class=T width=13%>202</TD>
<TD class=T width=55%>指示一个以 Null 终止的 Unicode 字符串(仅限于 <B>Parameter</B> 对象)。</TD>
</TR>
<TR VALIGN="top">
<TD class=T width=32%><B>adWChar</B>
<P class=T></P>
</TD>
<TD class=T width=13%>130</TD>
<TD class=T width=55%>指示一个以 Null 终止的 Unicode 字符串 (DBTYPE_WSTR)。</TD>
</TR>
</TABLE>
</body>
</html>

在已有的表,创建字段。
复制代码 代码如下:

<%
dbs="Data Source="+server.mappath("database.mdb")+";Provider=Microsoft.Jet.OLEDB.4.0;"
set conn=server.createobject("ADODB.connection")
conn.open dbs
set cat =server.createobject("ADOX.Catalog")
Set cat.ActiveConnection = conn
set tbl=cat.tables("bbs")
set objColumn = server.createObject("ADOX.Column")
Set objColumn.parentCatalog = cat
objColumn.name = "time1"
objColumn.type = "130"
objColumn.attributes=2
tbl.columns.append objColumn
set objTable = nothing
set objCat = nothing
%>

删除字段和修改字段
复制代码 代码如下:

<%
dbs="Data Source="+server.mappath("database.mdb")+";Provider=Microsoft.Jet.OLEDB.4.0;"
set conn=server.createobject("ADODB.connection")
conn.open dbs
set cat =server.createobject("ADOX.Catalog")
Set cat.ActiveConnection = conn
set tbl=cat.tables("bbs")
tbl.columns.delete "time"
set field=tbl.columns("time2")
field.name="time"
%>

创建数据库文件
复制代码 代码如下:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%
Option Explicit
dim databasename '定义数据库名称
databasename="database.mdb" '数据库名称
dim databasepath '定义数据库存放路径
databasepath="E:\张伟\模块开发\新闻模块\" '数据库绝对路径
dim databasever '定义数据库版本 2000 或者 97
databasever = "2000"
Function Createdfile(FilePath,FileName,Ver)
Dim Ca,dbver
select case ver
case "97"
dbver = "3.51"
case "2000"
dbver = "4.0"
end select
if dbver <> "" then
Set Ca = Server.CreateObject("ADOX.Catalog")
call Ca.Create("Provider=Microsoft.Jet.OLEDB." & dbver & ";Data Source=" & filepath & filename)
end if
End Function
Createdfile databasepath,databasename,databasever '创建数据库
%>
"