1.数据库
if exists(select 1 from master..dbo.sysdatabases where name='example')
print 'DataBase existed'
else
print 'Database not existed'
2.表
IF Exists(Select 1 From sysObjects Where Name ='表名' And Type In ('S','U'))
Print 'Exists Table'
Else
Print 'Not Exists Table'
2. 怎么判断sql数据库是否存在,存在删除
判断数据库,如果存在则删除:
IF (EXISTS(SELECT * FROM master.dbo.sysdatabases WHERE dbid=db_ID('dbname')))
DROP DATABASE dbname
如果提示:删除数据库时提示数据库正在被使用,无法删除(Cannot drop database databasename because it is currently in use),使用:
IF (EXISTS(SELECT * FROM master.dbo.sysdatabases WHERE dbid=db_ID('dbname')))
BEGIN
USE master
ALTER DATABASE dbname
SET single_user
WITH ROLLBACK IMMEDIATE
DROP DATABASE dbname
(2)sql判断数据库表是否存在扩展阅读
判断储存过程,如果存在则删除
IF (EXISTS(SELECT * FROM sysobjects WHERE name='procerename' AND type='P'))
DROP PROCEDURE procerename
判断触发器,如果存在则删除
IF (EXISTS(SELECT * FROM sysobjects WHERE id=object_id(N'[dbo].[triggername]') AND OBJECTPROPERTY(id, N'IsTrigger') = 1))
DROP TRIGGER triggername
判断用户函数是否存在,如果存在则删除
此处type有两种: 'TF'- Table-Value Function 表值函数 'FN'- Scalar-Value Function 标量值函数
IF (EXISTS(SELECT * FROM sysobjects WHERE id=object_id(N'[dbo].[userfunction]') AND (type='FN' OR type='TF')))
DROP FUNCTION userfunction
3. 如何判断一个数据库是否存在 (SQL Server 2008)
SqlConnection myconn=new SqlConnection("server=.;datebase=master;uid=sa;pwd=xxx");
myconn,Open();
string sql="select 1 from master,dbo.sysdatabases where [name]='要检查的是否存在数据库名字'“
SqlCommand cmd=new SqlCommand(sql,mycnn);
if(cmd.ExecuteScalar()!=null)
{
MessageBox.Show("已存在该数据库");
}
上面是c#的写法,但是解决方案大致就是,创建master数据库的连接,执行
select 1 from master,dbo.sysdatabases where [name]='要检查的是否存在数据库名字'
是否有返回值就是有了反之就没有
更简单的就是全盘收索(或者你知道范围的去限定搜索范围)
要检查的是否存在数据库名字.mdf
这个文件吧有就是有的话一般就是有这个数据库了,不过也存在没有附加的可能,但是没有这个文件就说明绝对是没有这个数据库的
4. sql语言如何判断数据库中有表
use bbsDB
if exists (select * from sysobjects where name = 'bbsUsers')
drop table bbsUsers
go
create table bbsUsers
(
uID int identity(1,1) not null,
uName nvarchar(15) not null,
uPassWord varchar(10) not null,
uEmail varchar(20) not null,
uSex int not null,
uClass int null,
uRemark varchar(20) null,
uRegDate smalldatetime not null,
uState int null,
uPoint int null,
)
go
这是判断并建bbsUsers表,我昨天刚学的。
5. 如何判断SQL中某个数据库是否存在
在SQL Server数据库编程时,常常需要判断一个数据库是否已经存在,如果不存在则创建此数据库。常用的方法有以下三种:
1. select * From master.dbo.sysdatabases where name='test_db'
如果不存在查询结果,则说明name所表示的数据库不存在
2. object_id('test_db')
如果无法获取对象ID(null),则说明此对象不存在;常用
if object_id('test_db') is null
或者
if (select object_id('test_db')) is null
3. db_id('test_db')
如果不能获取数据库ID,则说明name所表示的数据库不存在;实际上此种方法也是在sysdatabases中查找,并返回数据库的ID;常用
if db_id('test_db') is null
或者
if (select db_id('test_db')) is null
6. SQL求助:想创建一个表,但在创建前先判断是否存在。如存在就删除它,不存在就创建。
1、创建对象时,如果没有指定Schema,就会挂在默认的Schema dbo下面。
7. 在SQL中怎么判断数据库里是否存在一张表
'select * from '+tableName+' where 1=0'
8. [转载]java和sql如何判断数据库表是否存在
1.sql语句判断数据库表是否存在: sql:select * from user_all_tables where table_name='tableName' String helperName= delegator.getGroupHelperName("com.asiainfo"); SQLProcessor sqlProcessor= new SQLProcessor(helperName); String sql = "select * from user_all_tables where table_name='"+table+"'"; ResultSet rsTables =sqlProcessor.executeQuery(sql); if(rsTables.next()){ Debug.logWarning("table:"+table+"exists", mole);}else{ Debug.logWarning("table:"+table+" does not exist", mole);}方法二:DatabaseMetaData meta = m_sqlCon.getMetaData(); ResultSet rsTables = meta.getTables(null , null, “YourTableName”, null); if(rsTables.next()){ System.out.println("The Table exsits.");}else{ System.out.println("The 如果schema参数为null的话,那么它会查询整个数据库中的表有可能会冲突的: getTables(String catalog,String schemaPattern,String tableNamePattern,String[] types) 参数: catalog:目录名称,一般都为空. 参数:schema:数据库名,对于oracle来说就用户名 参数:tablename:表名称 参数:type :表的类型(TABLE | VIEW) 注意:在使用过程中,参数名称必须使用大写的。
9. 怎样可以检测SQL数据库中某个表是否存在
在sql数据库中有一个sysobjects表,记录当前所有的表名可以用Query(SQL语句)SELECT * FROM sysobjectsWHERE '表名' = Name或用Table打开,用Locate找一下