数据库的问题(100分)

  • 主题发起人 主题发起人 loy_guoyi
  • 开始时间 开始时间
L

loy_guoyi

Unregistered / Unconfirmed
GUEST, unregistred user!
我想在程序运行前先判一下是否存在该数据库,如果不存在就新创建一个,我用的数据库是SQL Server。希望大家多多帮助!!
 
1、你要先写注册表,如果是第一次运行程序,保证没有数据库,原后创建,创建数据库后将信息写到注册表中;
2、检查你数据库创建的目录,是否存在数据库
 
SELECT name FROM master.dbo.sysdatabases WHERE name = N'test'
test是数据库名
用adoconnection先连接上sqlserver并不要指定具体的数据库
用adoquery执行上述的sql语句
如果返回的记录不为空说明存在此数据库
 
-- 判断数据库是否存在
SELECT Name FROM Master.dbo.sysdatabases
where name='yourdatabasename'
 
--创建数据库
USE master
go
CREATE DATABASE databasename
ON
( NAME = databasename_dat,
FILENAME = 'e:/program files/microsoft sql server/mssql/data/databasename.mdf',
SIZE = 10,
MAXSIZE = 50,
FILEGROWTH = 5 )
LOG ON -- 日志文件
( NAME = 'databasename_log',
FILENAME = 'e:/program files/microsoft sql server/mssql/data/databasename.ldf',
SIZE = 2MB,
MAXSIZE = 25MB,
FILEGROWTH = 5MB )
 
adoquery连接master
with adoquerydo
begin
close;
sql.clear;
sql.add('select name from sysdatabases where name='+quotedstr('数据库名'));
open;
if recordcount=0 then
begin
CREATE DATABASE databasename
ON
( NAME = databasename_dat,
FILENAME = 'e:/program files/microsoft sql server/mssql/data/databasename.mdf',
SIZE = 10,
MAXSIZE = 50,
FILEGROWTH = 5 )
LOG ON -- 日志文件
( NAME = 'databasename_log',
FILENAME = 'e:/program files/microsoft sql server/mssql/data/databasename.ldf',
SIZE = 2MB,
MAXSIZE = 25MB,
FILEGROWTH = 5MB )

end;
end;
 
多人接受答案了。
 
后退
顶部