if object_id('tb1','U') is not null
drop table tb1
这段代码,没有这段代码难道就不行吗?object_id的这段代码意义是什么,还望高手耐心指教
[代码]
if object_id('tb1','U') is not null
drop table tb1
go
create table tb1
(
id int,
金额 int
)
go
insert into tb1
select 1,12 union all
select 2,13 union all
select 3,15 union all
select 3,20 union all
select 4,12 union all
select 4,21
go
if object_id('tb2','U') is not null
drop table tb2
go
create table tb2
(
id int,
分类 varchar(10)
)
go
insert into tb2
select 1,'一类' union all
select 2,'一类' union all
select 3,'二类' union all
select 4,'二类'
go
select 分类,金额=sum(金额) from tb1 inner join tb2 on tb1.id=tb2.id group by 分类
go
8 个解决方案
#1
只是为了在创建表之前做个判断看是否有这个名称的表存在,如果存在就删除,然后创建,不存在就直接创建了。。。。
#2
判断是否存在表,如果存在就删除,下面语句创建,
#3
判断表tb1是否存在.存在则删除之.
#4
OBJECT_ID 返回架构范围内对象的数据库对象标识号。
参数
' object_name '
要使用的对象。object_name 的数据类型为 varchar 或 nvarchar。如果 object_name 的数据类型为 varchar,则它将隐式转换为 nvarchar。可以选择是否指定数据库和架构名称。
' object_type '
架构范围的对象类型。object_type 的数据类型为 varchar 或 nvarchar。如果 object_type 的数据类型为 varchar,则它将隐式转换为 nvarchar。有关对象类型的列表,请参阅 sys.objects (Transact-SQL) 中的 type 列。
if object_id('tb1','U') is not null --判断object_id返回tb表的id 是否为空
drop table tb1 --如果为空说明表存在,则删除tb1表
参数
' object_name '
要使用的对象。object_name 的数据类型为 varchar 或 nvarchar。如果 object_name 的数据类型为 varchar,则它将隐式转换为 nvarchar。可以选择是否指定数据库和架构名称。
' object_type '
架构范围的对象类型。object_type 的数据类型为 varchar 或 nvarchar。如果 object_type 的数据类型为 varchar,则它将隐式转换为 nvarchar。有关对象类型的列表,请参阅 sys.objects (Transact-SQL) 中的 type 列。
if object_id('tb1','U') is not null --判断object_id返回tb表的id 是否为空
drop table tb1 --如果为空说明表存在,则删除tb1表
#5
楼上们说的很对。。。
#6
++
#7
傳回結構描述範圍的物件之資料庫物件識別碼。
object_name '
這是要使用的物件。object_name 是 varchar 或 nvarchar。如果 object_name 是 varchar,它會隱含地轉換成 nvarchar。資料庫和結構描述名稱的指定是選擇性的。
' object_type '
這是結構描述範圍物件類型。object_type 是 varchar 或 nvarchar。如果 object_type 是 varchar,它會隱含地轉換成 nvarchar。如需物件類型清單,請參閱<sys.objects (Transact-SQL)>中的 type 資料行。
用語句就是這樣意思,對象名和ID一對一 OBJECT_ID(Name,'U'),OBJECT_Name(ID)
object_name '
這是要使用的物件。object_name 是 varchar 或 nvarchar。如果 object_name 是 varchar,它會隱含地轉換成 nvarchar。資料庫和結構描述名稱的指定是選擇性的。
' object_type '
這是結構描述範圍物件類型。object_type 是 varchar 或 nvarchar。如果 object_type 是 varchar,它會隱含地轉換成 nvarchar。如需物件類型清單,請參閱<sys.objects (Transact-SQL)>中的 type 資料行。
用語句就是這樣意思,對象名和ID一對一 OBJECT_ID(Name,'U'),OBJECT_Name(ID)
SELECT ID, name,OBJECT_ID(Name,'U'),OBJECT_Name(ID)
from sysobjects
WHERE xtype='U'
#8
一般在写脚本的时候 判断是否存在
#1
只是为了在创建表之前做个判断看是否有这个名称的表存在,如果存在就删除,然后创建,不存在就直接创建了。。。。
#2
判断是否存在表,如果存在就删除,下面语句创建,
#3
判断表tb1是否存在.存在则删除之.
#4
OBJECT_ID 返回架构范围内对象的数据库对象标识号。
参数
' object_name '
要使用的对象。object_name 的数据类型为 varchar 或 nvarchar。如果 object_name 的数据类型为 varchar,则它将隐式转换为 nvarchar。可以选择是否指定数据库和架构名称。
' object_type '
架构范围的对象类型。object_type 的数据类型为 varchar 或 nvarchar。如果 object_type 的数据类型为 varchar,则它将隐式转换为 nvarchar。有关对象类型的列表,请参阅 sys.objects (Transact-SQL) 中的 type 列。
if object_id('tb1','U') is not null --判断object_id返回tb表的id 是否为空
drop table tb1 --如果为空说明表存在,则删除tb1表
参数
' object_name '
要使用的对象。object_name 的数据类型为 varchar 或 nvarchar。如果 object_name 的数据类型为 varchar,则它将隐式转换为 nvarchar。可以选择是否指定数据库和架构名称。
' object_type '
架构范围的对象类型。object_type 的数据类型为 varchar 或 nvarchar。如果 object_type 的数据类型为 varchar,则它将隐式转换为 nvarchar。有关对象类型的列表,请参阅 sys.objects (Transact-SQL) 中的 type 列。
if object_id('tb1','U') is not null --判断object_id返回tb表的id 是否为空
drop table tb1 --如果为空说明表存在,则删除tb1表
#5
楼上们说的很对。。。
#6
++
#7
傳回結構描述範圍的物件之資料庫物件識別碼。
object_name '
這是要使用的物件。object_name 是 varchar 或 nvarchar。如果 object_name 是 varchar,它會隱含地轉換成 nvarchar。資料庫和結構描述名稱的指定是選擇性的。
' object_type '
這是結構描述範圍物件類型。object_type 是 varchar 或 nvarchar。如果 object_type 是 varchar,它會隱含地轉換成 nvarchar。如需物件類型清單,請參閱<sys.objects (Transact-SQL)>中的 type 資料行。
用語句就是這樣意思,對象名和ID一對一 OBJECT_ID(Name,'U'),OBJECT_Name(ID)
object_name '
這是要使用的物件。object_name 是 varchar 或 nvarchar。如果 object_name 是 varchar,它會隱含地轉換成 nvarchar。資料庫和結構描述名稱的指定是選擇性的。
' object_type '
這是結構描述範圍物件類型。object_type 是 varchar 或 nvarchar。如果 object_type 是 varchar,它會隱含地轉換成 nvarchar。如需物件類型清單,請參閱<sys.objects (Transact-SQL)>中的 type 資料行。
用語句就是這樣意思,對象名和ID一對一 OBJECT_ID(Name,'U'),OBJECT_Name(ID)
SELECT ID, name,OBJECT_ID(Name,'U'),OBJECT_Name(ID)
from sysobjects
WHERE xtype='U'
#8
一般在写脚本的时候 判断是否存在