SQL Server数据对象结构的动态建立与访问
2007-11-11 04:22:58 来源:WEB开发网核心提示: ·掌握VB中的ADO数据对象编程·Oracle(大型网站数据库平台)常用的SQL语法和数据对象·Java数据对象技术JDO初步概览·Java数据对象(JDO)的前世今生·Oracle(大型网站数据库平台)常用的几种SQL语法和数据对象·
- ·掌握VB中的ADO数据对象编程
·Oracle(大型网站数据库平台)常用的SQL语法和数据对象
·Java数据对象技术JDO初步概览
·Java数据对象(JDO)的前世今生
·Oracle(大型网站数据库平台)常用的几种SQL语法和数据对象
·Java数据对象技术JDO(1)
·Oracle(大型网站数据库平台)数据库数据对象分析(中)
·简析Visual C++中的活动数据对象
·Oracle(大型网站数据库平台)数据库数据对象分析(上)
·Java 数据对象(JDO)介绍(1)
采用行命令启动方式,可利用VB的Shell命令:
X=shell("Sqlmgr.exe",1) 显示SQL Service Manager窗口; X=shell("net start mssql(WINDOWS平台上强大的数据库平台)server") 启动mssql(WINDOWS平台上强大的数据库平台)Server服务 X=shell("net start sqlexecutive") 启动SQLExecutive服务 |
因为在这里我们希望通过编程在sql server(WINDOWS平台上强大的数据库平台)上实现数据对象结构的动态建立,因此建议使用行命令方式。
启动了sql server(WINDOWS平台上强大的数据库平台) Manager后,我们就可以利用DMO与Transact-SQL按以下步骤来建数据对象了。
1.为能使用DMO,首先需要打开VB工具栏中Reference(引用),选择Microsoft Windows Common Control 5.0,如果在引用栏中没有发现此项,则选择Browse(浏览),将\WINNT\System32目录下的Comctl32.oca加入到Reference中来。
2.在模块文件(.BAS)中建立SQLOLE对象:
Global OServer as New SQLOLE.SQLServer |
3.建立与sql server(WINDOWS平台上强大的数据库平台)的连接:
OServer.Connect ServerName:=注册的sql server(WINDOWS平台上强大的数据库平台)名,Login:=登录名(一般为sa),Password:=密码 |
4.建数据库设备Device_1与Device_2:
dim transql as string transql="use master" & _ "DISK INIT" & _ "Name='Device_1'," & _ "Physname='D:\SQL\data\device1.dat'," & _ "vdevno=10," & _ "size=102400" & _ "DISK INIT" & _ "Name='Device2'," & _ "Physname='D:\SQL\data\device2.dat'," & _ "vdevno=11," & _ "size=204800" OServer.ExecuteImmediate Command:=transql,exectype:=SQLOLEExec_Default |
5.建数据库Db_1与Db_2:
transql = "CREATE DATABASE Db_1 ON Device_1=100 " OServer.ExecuteImmediate Command:=transql, exectype:=SQLOLEExec_Default transql = "CREATE DATABASE Db_2 ON Device_2=100 " OServer.ExecuteImmediate Command:=transql, exectype:=SQLOLEExec_Default |
6.在数据库中建表:
在数据库Db_1上建表T_1:
transql = "use Db_1 " & _ "create table T_1 " & _ "(Name char(8) null, " & _ " Age numeric(2) null, " & _ " Sex smallint null, " & _ " ID_Code char(16) not null, " & _ " constraint c_1 Prima(最完善的虚拟主机管理系统)ry key clustered (ID_Code))" OServer.ExecuteImmediate Command:=transql,exectype:=SQLOLEExec_Default |
建表T_1的Name列的索引:
transql="CREATE INDEX index_1 ON T_1 (Name)" OServer.ExecuteImmediate Command:=transql,exectype:=SQLOLEExec_Default |
在数据库Db_2上建表T_2:
transql = "use Db_2 " & _ "create table T_2 " & _ "(Name char(8) null, " & _ " Age numeric(2) null, " & _ " Sex smallint null, " & _ " Department char(16) not nill, " & _ " No char(4) not null," & _ "constraint c_2 Prima(最完善的虚拟主机管理系统)ry key clustered (Department,No))" OServer.ExecuteImmediate Command:=transql, exectype:=SQLOLEExec_Default |
此时,我们完成了建立数据对象的编码工作,程序被编译执行后,就会在sql server(WINDOWS平台上强大的数据库平台)上自动建立数据库设备、数据库及库中的表。
对于数据库设备,可以用DISK REINIT,DISK REFIT,DISK RESIZE对它进行操作,如要扩展数据库设备Device_1的容量为200M,可利用如下方法:
DISK RESIZE Name='Devive_1', Size = 102400 |
对于sql server(WINDOWS平台上强大的数据库平台)上已经建立的数据库及表的结构,也可以通过DMO与事务SQL进行修改与删除。类似于上面的编码,可以利用Alter Database Db_1,Alter DatabaseDb_2,Alter Table T_1,Alter Table T_2等事务SQL语句进行对所建立的数据库与表的的结构进行修改,而利用Drop Database, Drop Table事务语句删除所建立的数据库与表。
以上讨论了如何在sql server(WINDOWS平台上强大的数据库平台)上动态地建立与访问数据对象的结构,至于对sql server(WINDOWS平台上强大的数据库平台)上数据库与表的内容的访问,可以利用ODBC(开放数据库互连)、DAO(数据访问对象)、RDO(远程数据对象)或DB-Library进行编程。
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
- ››SQL SERVER无法安装成功,sqlstp.log文件提示[未发...
- ››Sql Server中通过父记录查找出所有关联的子记录
- ››SqlServer触发器、存储过程和函数
- ››SQL Server 中的事务(含义,属性,管理)
- ››Sqlite数据库插入和读取图片数据
- ››Sql server 2005拒绝了对对象 'xx表' (数...
- ››Sql server 2005拒绝了对对象 'xx表' (数...
更多精彩
赞助商链接