sql存在
Ⅰ sql判断列是否存在
use数据库名
go
declare@tableNamevarchar(255)
declare@columnNamevarchar(255)
set@tableName='表名'
set@columnName='列名'
ifexists(select[name]fromsys.columns
whereobject_id=(
selectobject_idfromsys.tables
where[name]=@tableName)
and[name]=@columnName)
print('存在列'+@columnName)
else
print('不存在列'+@columnName)
Ⅱ SQL如何查找我提供的数据是否存在于数据库表中
declare @cloumns varchar(40)declare @tablename varchar(40)declare @str varchar(40)declare @counts intdeclare @sql nvarchar(2000)declare MyCursor Cursor For Select a.name as Columns, b.name as TableName from syscolumns a,sysobjects b,systypes c where a.id = b.idand b.type = 'U' and a.xtype=c.xtypeand c.name like '%char%'set @str='张三'Open MyCursorFetch next From MyCursor Into @cloumns,@tablenameWhile(@@Fetch_Status = 0)Begin set @sql='select @tmp_counts=count(*) from ' +@tablename+ ' where ' +@cloumns+' = ''' +@str+ ''''execute sp_executesql @sql,N'@tmp_counts int out',@counts out if @counts>0 begin print '表名为:'+@tablename+',字段名为'+@cloumns endFetch next From MyCursor Into @cloumns,@tablenameEndClose MyCursorDeallocate MyCursor
Ⅲ 怎么判断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
(3)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
Ⅳ sql 判断是否存在
declare @a int --定义变量
select @a=count(*) from A where id = '2' --查询表A是否存在id='2'的数据,并赋值给变量@a
--以下为判断
if @a='0'
begin
print '不存在'
insert into aaa (id) values ('2') --插入数据
end
else
print '存在'
Ⅳ SQL 语句判断记录是否存在
方法1:
判断表中是否存在记录的SQL语句
判断表中是否存在记录,我们惯常使用的语句是:
select COUNT(*) from tableName where conditions
方法2:
如果只是判断记录是否存在,而不需要获取实际表中的记录数还有一种推荐做法:
if exists (select * from tableName where conditions) select '1' else select '0'
通过返回值去判断是否存在。
据推荐,第二种方法效率高些,但使用profiler工具分析
通过where条件过滤出100多条数据时。第一种方法的rtion明显比第二种方法的低很多
也就是说,第一种效率高些。
Ⅵ sql 查询 数据库中数据是否存在
select count(*) from 表
where UserId=输入的值
or 单位名称=(select 单位名称 from 表 where 用户编号=输入的值)
---------------------------
如果selec 返回的值不为0 就是验证通过了~~
Ⅶ sql中怎样判断函数已经存在
是否存在某函数的判断if exists(select 0 from sysobjects where name='函数名' and xtype='FN')begin --存在end
Ⅷ sql server查询数据是否存在
ADOQUERY.SQL.ADD( "select * from user where username='" + username + "'");
ADOQUERY.SQL.ADD('AND PASSWORD='''+PASS+'''');
IF ADOQUERY.RecordCount=1 then
用户密码验证正确
Ⅸ SQL如何判断一行数据是否存在
if exists(select 1 from WinBid where ProjectID = @ProjectID)
-- update...
else
-- insert...
或者
update ...
if @@rowcount <> 1
insert...
Ⅹ 如何判断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