sqlserver语句

来源:互联网 发布:如何解除单位网络权限 编辑:程序博客网 时间:2024/06/06 16:35
IF not  exists  (SELECT  * FROM dbo.SysObjects WHERE ID = object_id(N'[Persons5]') AND OBJECTPROPERTY(ID, 'IsTable') = 1) 
CREATE TABLE  Persons5
(  
    Id_P int not null primary key default '0',  
    LastName nvarchar(40),  
    FirstName nvarchar(40),  
    Address varchar(255),  
    City varchar(255)  

)  



上面的意思。如果不存在物理表  Persons5  就创建



IF   exists  (SELECT  * FROM dbo.SysObjects WHERE ID = object_id(N'[Persons4]') AND OBJECTPROPERTY(ID, 'IsTable') = 1) 
PRINT '存在'
ELSE 
PRINT '不存在'


--判断临时表是否存在
 if object_id('tempdb..#hs') is not null
  print 1 
 else
  print 2
--判断物理表是否存在
if exists (select * from sysobjects where id=object_id(N'BMS_Alarm') and OBJECTPROPERTY(id, N'IsUserTable')=1)
print 1
else 
print 2



创建复合主键的表

 CREATE TABLE  ddd
(  
 d1 int NOT NULL, 
 d2 int NOT NULL, 
 d3 int NOT NULL, 
 CONSTRAINT pk_PersonID PRIMARY KEY (d1,d2)  //也可以 PRIMARY KEY (d1,d2)   建议起个名字,否则名字随机的
)  


插入一条

 INSERT INTO aaa (Level,a2,a3,a4) VALUES (100, '2001-01-01', 111,555)

创建默认系统时间的字段,插入数据时,可以省去

 CREATE TABLE  qww
(  
 d1 int NOT NULL, 
 d2 datetime DEFAULT getdate(),   
 d3 int NOT NULL
)  
INSERT INTO qww (d1,d2) VALUES (111,211)   
 select *from qww


CURRENT_TIMESTAMP
返回当前的日期和时间。此函数等价于 GETDATE()。
语法
CURRENT_TIMESTAMP
返回类型
datetime


直关的sql 联级更新语句

UPDATE a 
SET a.c = b.c 
FROM table1 a
inner join table2 b on b.a=a.a

WHERE a.c is null




0 0
原创粉丝点击