首先得连到SQL server的master 库上,然后创建数据库。
use master
create database your_Db
use your_db
create table aa (...)
....
.
use master
exec sp_db_option "dbo use only ",true 
exec restore database ....
use 

解决方案 »

  1.   

    我找到了一份资料,可执行不起来,请帮忙看看,我现在用的是VB6。0,资料用的是5。0,如下:
    如何在Visual Basic 5.0中利用DMO与Transact-SQL在SQL Server上建立数据库设备、数据库及其他数据对象。我们从具体问题着手:在SQL Server上建立200M与400M的数据库设备Device_1、Device_2,在Device_1与Device_2上分别建立容量为100M的两个数据库Db1与Db2,在Db1库中建立表T_1,有四个域:Name,Age,Sex,ID_Code,以ID_Code为关键字,以Name为索引,在Db2库中建立表T_2,有五个域:Name、Age、Sex、Department、No,以Department与No为关键字。访问SQL Server,首先要打开SQL Service Manager,SQL Service Manager 用于启动、暂停、继续、停止SQL Server的服务,包括MSSQLServer与SQLExecutive两项。可以通过手工方式打开这两项服务,也可以在程序中通过行命令式打开它们。若采用手工方式,则打开SQL Service Manager,对于其中的服务MSSQLServer与SQLExecutive,直接启动它们的Start/Continue绿灯即可。采用行命令启动方式,可利用VB的Shell命令:X=shell("Sqlmgr.exe",1) 显示SQL Service Manager窗口;
    X=shell("net start mssqlserver") 启动MSSQLServer服务 
    X=shell("net start sqlexecutive") 启动SQLExecutive服务因为在这里我们希望通过编程在SQL Server上实现数据对象结构的动态建立,因此建议使用行命令方式。启动了SQL Server 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.SQLServer3.建立与SQL Server的连接: 
    OServer.Connect ServerName:=注册的SQL Server名,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_Default5.建数据库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_Default6.在数据库中建表:
    在数据库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 primary 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 primary key clustered (Department,No))"
    OServer.ExecuteImmediate Command:=transql, exectype:=SQLOLEExec_Default此时,我们完成了建立数据对象的编码工作,程序被编译执行后,就会在SQL Server上自动建立数据库设备、数据库及库中的表。 对于数据库设备,可以用DISK REINIT,DISK REFIT,DISK RESIZE对它进行操作,如要扩展数据库设备Device_1的容量为200M,可利用如下方法:DISK RESIZE
    Name=注释:Devive_1注释:, 
    Size = 102400对于SQL Server上已经建立的数据库及表的结构,也可以通过DMO与事务SQL进行修改与删除。类似于上面的编码,可以利用Alter Database Db_1,Alter DatabaseDb_2,Alter Table T_1,Alter Table T_2等事务SQL语句进行对所建立的数据库与表的的结构进行修改,而利用Drop Database, Drop Table事务语句删除所建立的数据库与表。以上讨论了如何在SQL Server上动态地建立与访问数据对象的结构,至于对SQL Server上数据库与表的内容的访问,可以利用ODBC(开放数据库互连)、DAO(数据访问对象)、RDO(远程数据对象)或DB-Library进行编程。 
      

  2.   

    使用ado对象执行建库的sql,当然要create一个数据源
      

  3.   

    这是我项目中的代码,你可以参考一下:
    sql = "Provider=SQLOLEDB.1;User ID=sa;Initial Catalog=master;Data Source= " & Servername
    Con.Open sql
    sql = "SELECT *  FROM  sysdatabases  Where name = '" & Databasename & "'"
    rs.Open sql, Con
    If Not rs.Eof  Then
    sql = "drop database " & Databasename
    Con.Execute sql
    End If
    sql = "create database " & Databasename & " on ( name=" & Databasename & ", filename= 'd:\mydb.mdf') log on ( name=" & Databasename & "_log, filename='d:\mydb.ldf')"
    Con.Execute sql
    Con.Close
    sql = "Provider=SQLOLEDB.1;User ID=sa;Initial Catalog=" & Databasename & ";Data Source= " & Servername
    Con.Open sql
    'databasename 和 servername分别是创建的数据库名称和服务器名称,你可以给用户填写,也可以在代码中指定.
      

  4.   

    '引用ADO
    dim con as new connection
    con.connectionstring="provider=msdasql;driver=sql server;server=yourserver;uid=yourUid;pwd=yourPWD;database=master;"
    '能登陆SQL Server中具有操作Master数据库的登陆账号
    con.open
    dim sql as string
    sql="create database DBName on( NAME = YPTECH,FILENAME = '" & App.Path & "\DBName.mdf',SIZE = 10,MAXSIZE = 50,FILEGROWTH = 5 )"
    '创建数据库的T-SQL语句
    con.excute sql 创建表格、视图、存储过程等同理