创建数据表/创建列的一些asp函数
作者:亮亮 来源:亮亮blog 发布时间:2008-06-24 12:21:00
标签:表,字段,数据库,access,函数
有时候要通过asp代码在数据库中创建表和列,下面的就是这些操作的函数。
1.检测表是否存在
tbName 检测的表的名称
dbTp 数据库的类型1为sql,0为access
返回1存在,返回0不存在
Function isTable(tbName,dbTp)
dim isTbSql
if dbTp="1" then
isTbSql="select count(*) as num from sysobjects where id=object_id('"&tbName&"')"
dim rs:set rs=conn.execute(isTbSql)
if rs("num")>0 then
isTable="1"
else
isTable="0"
end if
rs.close
set rs=nothing
else
on error resume next
dim rs2:set rs2=conn.execute(tbName)
if err.number=0 then
isTable="1"
else
isTable="0"
end if
rs2.close
set rs2=nothing
end if
End Function
2.检测字段是否存在
tbName 要检测的字段所在的表
colName 要检测的字段
dbTy 数据库类型 1为sql,0为access
返回1表示字段存在,返回0表示不存在,当然若表不存在也是返回0
Function isCol(tbName,colName,dbTy)
dim isColSql
if dbTy="1" then
isColSql="select count(*) as num from syscolumns where id=object_id('"&tbName&"') and name='"&colName&"'"
dim rs:set rs=conn.execute(isColSql)
if rs("num")>0 then
isCol="1"
else
isCol="0"
end if
rs.close
set rs=nothing
else
isColSql="select "&colName&" from "&tbName
on error resume next
dim rs1:set rs1=conn.execute(isColSql)
if err.number=0 then
isCol="1"
else
iscol="0"
end if
rs1.close
set rs1=nothing
end if
End Function
3.添加表函数
tbName 表的名称
pkCol 表的第一个字段,此字段必须为你创建表的主键,并且自动编号
Function addTable(byVal tbName,byVal pkCol)
Dim TSql
if isTable(tbName,dbType)="0" then
TSql="Create Table ["&TbName&"]("&pkCol&" int IDENTITY (1,1) CONSTRAINT PrimaryKey PRIMARY KEY);"
conn.Execute(TSql)
response.Write("表创建成功")
else
response.Write("要创建的表存在")
end if
End Function
4.添加列名
tbName 表名称
colName 列名称
colType 列的数据类型;如nvarchar(50)
Function addCol(tbName,colName,colType)
if isTable(tbName,dbType)="1" and isCol(tbName,colName,dbType)="0" then
Dim TSql
TSql="Alter Table ["&tbName&"] Add "&colName&" "&colType
conn.Execute(TSql)
response.Write("列:"&colName&" 创建成功")
else
response.Write("列:"&colName&" 没有创建,可能表不存在或字段重复")
end if
End Function
5.删除列
Function delCol(tbName,colName)
if isTable(tbName,dbType)="1" and isCol(tbName,colName,dbType)="1" then
Dim TSql
TSql="Alter Table ["&tbName&"] Drop column "&colName
conn.Execute(TSql)
response.Write("列: "&colName&" 删除成功")
else
response.Write("表或者列不存在")
end if
End Function
使用方法相信就很简单了,看下面的示例:
dim connStr
const dbType="1"
if dbType="0" then
connStr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath("../test.mdb")
else
connStr="Provider=Sqloledb;User Id=sa;Password=12345a;Initial Catalog=test;Data Source=(local)"
end if
dim conn:set conn=server.CreateObject("adodb.connection")
conn.open connStr
'下面的就是例子
addTable "myTb1","mId"
'addCol "myTb1","mCol_1","nvarchar(50)"
'delCol "myTb1","mCol_1"
'response.Write(isCol("myTb1","mCol_1","0"))
conn.close
set conn=nothing


猜你喜欢
- 昨天同事无意又谈起了这个老话题,美工和设计师(视觉)有什么不同?以文字排版设计为例,列了下面两个图来说明,可能会有一些启发, 第一个图应该算
- 前言官方手册:https://dev.mysql.com/doc/refman/5.7/en/server-logs.html不管是哪个数据
- SQL JOIN 连接SQL JOIN 子句用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段。最常见的 JOIN 类型:SQL
- 1、什么是GIL全局解释器锁GIL:Global Interpreter Lock,意思就是全局解释器锁,这个GIL并不是Python的特性
- Javascript 实现计算器:系列文章:JS 实现计算器详解及实例代码(一)Javascript 实现计算器时间功能详解及实例(二)小型
- MySQL存储过程SAVEPOINT ROLLBACK to示例如下:DELIMITER $$DROP PROCEDURE IF EXIST
- 在Python程序中导入ctypes模块,载入动态链接库。动态链接库有三种:cdll以及windows下的windll和oledll,cdl
- 目录概述索引数据结构二叉树红黑树B-TreeB+TreeHash索引InnoDB 索引实现(聚集)索引文件和数据文件是分离的(非聚集)聚集索
- 在我们使用一些数据的过程中,我们想要打乱数组内数据的顺序但不改变数据本身,可以通过改变索引值来实现,也就是将索引值重新随机排列,然后生成新的
- 本文实例讲述了python 协程中的迭代器,生成器原理及应用。分享给大家供大家参考,具体如下:1.迭代器理解迭代器:迭代器是访问可迭代对象的
- django的url采用正则表达式进行配置,虽然强大却也广为诟病。反对者们认为django的url配置过于繁琐,且不支持默认的路由功能。我倒
- 本文实例讲述了Python简单实现子网掩码转换的方法。分享给大家供大家参考,具体如下:这里实现将子网掩码长度转换为具体的子网掩码地址:def
- 约定:import pandas as pdimport numpy as npfrom numpy import nan as NaN滤除
- 服务器重新启动的情况当mysqld启动时,所有的授权表内容被读进存储器并且从那时开始生效。被服务器立即应用的情况用GRANT、REVOKE或
- 本篇文章主要是由于计划使用django写一个计划任务出来,可以定时的轮换值班人员名称或者定时执行脚本等功能,百度无数坑之后,终于可以凑合把这
- 本文主要研究的是python读取jpg格式图片并显示为16进制的相关内容,具体如下。代码:>>> aaa = open(&
- 这篇文章主要介绍了Python tkinter三种布局实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,
- 1.match() 从开始位置开始匹配 2.search() 任意位置匹配,如果有多个匹配,只返回第一个 3.finditer() 返回所有
- 1、余弦相似度余弦相似度衡量的是2个向量间的夹角大小,通过夹角的余弦值表示结果,因此2个向量的余弦相似度为:余弦相似度的取值为[-1,1],
- 我就废话不多说了,大家还是直接看代码吧!stdi, stdo, stde = sys.stdin, sys.stdout, sys.stde